Electronic direction technology

ABSTRACT

An electronic direction system accesses navigation data describing at least one instance in which a direction was missed during provision of electronic navigation along a route and tracks instances in which directions have been missed based on the accessed navigation data. The electronic direction system accounts for the tracked instances in which directions have been missed in handling provision of future directions.

FIELD

This document relates to electronic navigation and direction technology.

BACKGROUND

Electronic navigation and mapping systems provide users with directionsbetween a starting location and a destination location. An electronicdevice may provide electronic navigation along a route between thestarting location and the destination location based on position data,such as Global Positioning System (GPS) data.

SUMMARY

Implementations of the described techniques may include hardware, amethod or process implemented at least partially in hardware, or acomputer-readable storage medium encoded with executable instructionsthat, when executed by a processor, perform operations.

The details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features will beapparent from the description and drawings, and from the claims.

DESCRIPTION OF DRAWINGS

FIGS. 1, 2, 19, 21A, 23A, 25, 28, 29A, 29B, 31, 33A, 33B, 33C, 35, 37A,37B, 38A, and 38B illustrate examples of user interfaces.

FIG. 3 depicts an example of an electronic navigation system.

FIGS. 4, 5, 7, 9, 11, 13, 15, 17, 18, 20, 22, 24, 26, 27, 30, 32, 34,and 36 are flowcharts of example processes.

FIGS. 6, 8, 10, 12, 14, 21B, and 23B illustrate examples of datastructures.

FIG. 16 illustrates examples of driving profiles.

DETAILED DESCRIPTION

Techniques are described for accounting for frequently missed directionsin providing directions to a user. For example, a system may changerouting decisions to avoid frequently missed directions in determining aroute to a destination. In another example, the system may changepresentation of directions to a user for frequently missed directions.

In some implementations, directions provided by an electronic navigationsystem may be difficult to follow and may result in directions beingmissed by a driver. In these implementations, to improve presentation ofdirections to the driver, the electronic navigation system may trackinstances in which the driver misses a direction and attempt to improvepresentation of the missed direction to the driver (or other drivers) infuture situations. For instance, when a driver is traveling fromlocation X to location Y along route A at a first point in time, theelectronic navigation system detects that the driver missed a turn alongthe route. When the driver travels again from location X to location Yalong route A at a second point in time, the electronic navigationsystem may present the direction(s) related to the missed turndifferently than the presentation at the first point in time, althoughthe missed turn itself remains part of the route. In other cases, whenthe driver travels again from location X to location Y at a second pointin time, the electronic navigation system may determine a differentroute that does not include the missed turn.

FIG. 1 illustrates an example of tracking a missed direction. FIG. 1includes a user interface of a navigation device that has a mappingdisplay area 101 that provides a display of a map of an areacorresponding to a current position of a navigation device. The mappingdisplay area 101 may display streets, points of interest, geographicalelements (e.g., lakes, fields, etc.), routing information, coordinates,compass directions, etc. The size and area of the mapping display area101 may be defined based on the current position of the navigationdevice and a zoom factor that defines a level of detail with which auser wishes to perceive the mapping display area 101. In someimplementations, the mapping display area 101 moves as the navigationdevice moves and the mapping display area 101 rotates as the navigationdevice rotates (e.g., turns down a road traveling in a differentdirection).

The mapping display area 101 also includes a current position indicator102. The current position indicator 102 provides a graphical indicationof the current position of the navigation device within the mappingdisplay area 101. The navigation device may determine the currentposition using a position detector. For instance, the navigation devicemay determine the current position of the navigation device using globalpositioning system (“GPS”) technology and display the current positionindicator 102 within the mapping display area 101 at a positioncorresponding to the current position determined by the navigationdevice. The navigation device may update the current position indicator102 continuously (or periodically) such that the current positionindicator 102 tracks motion of the navigation device (e.g., as thenavigation device moves along a road, the current position indicator 102moves along a displayed representation of the road in the mappingdisplay area 101).

When a user specifies a destination location, the navigation deviceprovides, to the user, electronic navigation to the destinationlocation. Providing electronic navigation may include identifying aroute to the destination and providing directions to the user to enablethe user to follow the route. For example, the navigation device mayalert the user when a change in direction is approaching (e.g., turnleft onto First Street in a quarter mile). In this example, theelectronic navigation device may provide turn-by-turn visual and voiceguidance.

The electronic navigation device may track a current position of theelectronic navigation device (e.g., using GPS technology) and determinewhether the user is following the identified route or diverging from theidentified route. When the user is following the identified route, theelectronic navigation device maintains the identified route andcontinues to provide, to the user, directions along the identifiedroute. When the user diverges from the identified route, the electronicnavigation device may re-route the user back to the identified route oridentify an alternative route to the destination based on the currentposition of the navigation device.

The route (or any re-routing) identified by the navigation device may beidentified based on routing settings of the navigation device. Forinstance, the routing settings may define a transport mode (e.g., car oron foot), route selection settings (e.g., minimize distance or minimizetime), avoid highways, prefer highways, avoid tunnels, avoid ferries,and avoid toll roads (the final five settings may be yes/no options).The navigation device may identify available roads/direction of travelbased on the routing settings (e.g., some roads may only be available tocars or some roads may be one-way for cars, but not for people on foot).The navigation device also may identify which roads to use in a routebased on the routing settings (e.g., roads that minimize distance to thedestination may be identified when a minimize distance setting is chosenor highways may not be included in the route when an avoid highwayssetting is chosen).

As shown in FIG. 1, the navigation device is providing electronicnavigation to a destination that is not included in the mapping displayarea 101. Based on the origin location and/or the current positionindicator 102 of the navigation device, the navigation device identifiesa route to the destination that includes a first road 104, an exit ramp106, and a second road 108. The navigation device identifies the routeincluding the first road 104, the exit ramp 106, and the second road 108based on current routing settings of the navigation device. Forinstance, the current routing settings of the navigation device mayindicate that distance should be minimized and the route including thefirst road 104, the exit ramp 106, and the second road 108 may minimizedistance to the destination.

In another example, the current routing settings of the navigationdevice may indicate that time should be minimized. In this example, theroute including the first road 104, the exit ramp 106, and the secondroad 108 may be a route to the destination that minimizes time.

Based on identification of the route including the first road 104, theexit ramp 106, and the second road 108 as being the preferred route tothe destination based on current routing settings, the navigation deviceprovides electronic navigation to the user along the route to thedestination. For instance, the navigation device may provide a directionlist to the user that includes the first road 104, the exit ramp 106,and the second road 108 and may provide turn-by-turn navigation alongthe route.

As shown in the first representation of the mapping display area 101 inFIG. 1, the current position indicator 102 indicates that the navigationdevice is traveling on the first road 104 and is approaching an exitfrom the first road 104. The exit includes a first exit 112, the exitramp 106, and a second exit 110. The navigation device has determinedthat the exit ramp 106 is the appropriate exit from the first road 104onto the second road 108. In response to the navigation devicedetermining that the exit ramp 106 is the appropriate exit and that theexit ramp 106 is approaching, the navigation device outputs a directioncommand to take the exit ramp 106 onto the second road 108. Thedirection command may be audibly output through a speaker and alsovisually output in a direction area 105 of the user interface of thenavigation device. The navigation device may provide the directioncommand when the navigation device determines that the current positionis a quarter of a mile away from the direction point where the exit ramp106 meets the first road 104.

As shown in the second representation of the mapping display area 101 inFIG. 1, the current position indicator 102 indicates that the navigationdevice is traveling on the first exit 112. In this example, the user didnot properly follow (e.g., missed) the direction to take the exit ramp106 onto the second road 108. Instead, the user turned too early ontothe first exit 112. Because the current position indicator 102 indicatesthat the navigation device is traveling on the first exit 112, thenavigation device determines that the direction was not properlyfollowed and the preferred route is no longer being used. In response tothe determination that the direction was not properly followed and thepreferred route is no longer being used, the navigation devicerecalculates a route to the destination and displays, in a directionarea 120 of the user interface of the navigation device, a messageindicating the navigation device is recalculating a route to thedestination.

In addition, in response to the determination that the direction was notproperly followed, the navigation device stores (or coordinates with aremote system to store) a data record 130 to track the occurrence of themissed direction. As shown, the data record 130 includes anidentification of the missed direction (e.g., Exit 106 or take Exit 106from Road 104), an identification of the date the direction was missed,an identification of the time the direction was missed, and anidentification of the route incorrectly followed in missing thedirection (e.g., Exit 112 or took Exit 112 from Road 104). The datarecord 130 describes the missed direction and may be used in handlingfuture provision of directions.

FIG. 2 illustrates an example of using a tracked instance of missing adirection in future presentation of the direction. As shown in FIG. 2,the navigation device is providing electronic navigation to thedestination referenced above with respect to FIG. 1 at a second, laterpoint in time. Similar to the example discussed with respect to FIG. 1,based on the origin location and/or the current position indicator 102of the navigation device, the navigation device identifies a route tothe destination that includes the first road 104, the exit ramp 106, andthe second road 108. The navigation device uses the same route used inthe example discussed with respect to FIG. 1, despite the exit ramp 106having been missed in the example discussed with respect to FIG. 1.

After the navigation device identifies the route to the destination thatincludes the first road 104, the exit ramp 106, and the second road 108,the navigation device compares the directions included in the identifiedroute to stored data that tracks occurrences of missed directions. Inthis example, the navigation device compares the directions included inthe route to the data record 130 and determines that the exit ramp 106was previously missed. Based on the determination that the exit ramp 106was previously missed, the navigation device determines to change howthe direction for taking the exit ramp 106 is presented to the user toprovide enhanced assistance in guiding the user along the proper route.

As shown in the first representation of the mapping display area 101 inFIG. 2, the navigation device outputs a direction command in response tothe navigation device determining that the exit ramp 106 is theappropriate exit and that the exit ramp 106 is approaching. Thedirection command provided in the example shown in FIG. 2 is differentthan the direction command provided in the example shown in FIG. 1.Specifically, the direction area 205 of the user interface of thenavigation device provides an alert to indicate that a previously and/orfrequently missed direction is approaching. The alert may inform theuser that a difficult direction is approaching and that the user shouldpay closer attention or use additional care to ensure the proper routeis followed. In addition, the direction area 205 provides a moredetailed description of the direction by indicating that the proper exitis the second exit. The additional detail provided in the description ofthe direction may assist the user in following the proper route.Further, the direction area 205 provides an indication of the incorrectroute followed when the direction was missed by the user (or otherusers). In this regard, the direction area 205 includes a note thatdrivers often exit too early onto Exit 112. The note may assist the userin following the proper route by alerting the user to the mistakepreviously made (or a common mistake) in advance of executing thedirection, so the same mistake can be avoided by the user. Thenavigation device also may be audibly output through a speaker thedirection commands shown in the direction area 205. The enhanceddirection commands may assist the user in following the proper route andstaying on course. In addition, the navigation device may provideenhanced direction commands only for directions that have been missed bya user using the navigation device or that are frequently missed byusers in general. By providing enhanced direction commands only fordirections that have been missed by a user using the navigation deviceor that are frequently missed by users in general, the navigation devicemay be able to alert the user to difficult portions of the route andavoid burdening the user with enhanced direction commands for directionsthat are relatively easy to follow.

In the example shown in FIG. 2, the enhanced direction commands assistedthe user in properly exiting onto the exit ramp 106. As shown in thesecond representation of the mapping display area 101 in FIG. 2, thecurrent position indicator 102 indicates that the navigation device istraveling on the exit ramp 106. In this example, the user properlyfollowed the direction to take the exit ramp 106 onto the second road108. Because the proper route was followed, the navigation devicedisplays, in a direction area 220 of the user interface of thenavigation device, the next direction (e.g., Enter onto Route 108). Asshown, the navigation device controls the direction area 220 to outputthe next direction in a regular manner without enhancements because thenavigation device determines that entering onto the second road 108 fromthe exit ramp 106 is not a previously or frequently missed direction.

FIG. 3 illustrates an example of an electronic navigation system 300.The system 300 includes an electronic navigation device 305, a network380, and a direction host 390. The network 380 enables the electronicnavigation device 305 and the direction host 390 to exchange electroniccommunications.

The electronic navigation device 305 includes an input module 310, adata store 320, mapping and routing data 330, a processor 340, aninput/output (I/O) device 350, a position detector 360, and a memory370. The electronic navigation device 305 may be used to provideelectronic navigation operations to a user. The electronic navigationdevice 305 may be a portable standalone device or may be attached to amobile vehicle (e.g., an automobile, a boat, etc.). The electronicnavigation device 305 may be implemented within hardware or acombination of hardware and software.

The input module 310 imports data associated with electronic navigation.The data may include data resulting from a mapping or navigationprocess. The data also may include data related to routing settings thatare used in identifying preferred routes to destinations. The inputmodule 310 may input data from a device (e.g., the direction host 390)connected to the network 380. In some implementations, the input module310 reformats and/or transforms the data such that the data may beprocessed and stored by other components within the electronicnavigation device 305.

The electronic navigation device 305 also includes a data store 320. Insome implementations, data from the input module 310 is stored in thedata store 320. The data store 320 may be, for example, a database thatlogically organizes data into a series of database tables. The datastore 320 may be a hard disk drive, non-volatile memory (e.g., Flashmemory), or another type of electronic storage device.

The electronic navigation device 305 also includes mapping and routingdata 330. The mapping and routing data 330 may include cartographic datathat the electronic navigation device uses to identify routes todestinations and provide electronic navigation to the destinations. Themapping and routing data 330 also may include routing settings thatrepresent a user's routing preferences and that are used by theelectronic navigation device 305 to identify a preferred route to adestination. The data 330 further may include point of interestinformation that is used in performing a search for a type of point ofinterest. In some implementations, the mapping and routing data 330 maybe received, by the electronic navigation device 305, from the directionhost 390.

The electronic navigation device 305 also includes a processor 340. Theprocessor 340 may be a processor suitable for the execution of acomputer program such as a general or special purpose microprocessor,and any one or more processors of any kind of digital computer.Generally, a processor receives instructions and data from a read-onlymemory or a random access memory or both. The processor 340 receivesinstructions and data from the components of the electronic navigationdevice 305 to, for example, identify preferred routes to destinationsand provide electronic navigation to the destinations. In someimplementations, the electronic navigation device 305 includes more thanone processor.

The electronic navigation device 305 also includes the I/O device 350,which is configured to allow a user selection. For example, the I/Odevice 350 may be a mouse, a keyboard, a stylus, a touch screen, a trackball, a toggle control, one or more user input buttons, a microphone, orany other device that allows a user to input data into the electronicnavigation device 305 or otherwise communicate with the electronicnavigation device 305. In some implementations, the user may be amachine and the user input may be received from an automated processrunning on the machine. In other implementations, the user may be aperson.

The I/O device 350 also may include a device configured to outputmapping and electronic navigation data. For instance, the I/O device 350may include a display device configured to display graphical userinterfaces (e.g., the user interfaces shown in FIGS. 1 and 2) thatenable a user to perceive electronic navigation directions/mappinginformation and enable a user to interact with the electronic navigationdevice 305. The I/O device 350 also may include a speaker configured toprovide audible output related to electronic navigationdirections/mapping information (e.g., audible directions).

The electronic navigation device 305 also includes the position detector360. The position detector 360 may be any type of electronic deviceconfigured to detect a position of the electronic navigation device 305.The position detector 360 may include an accelerometer or a cameraconfigured to detect a position of the electronic navigation device 305.The detected position may be used as input data in providing navigationusing the navigation device 305.

The position detector 360 may be a global positioning system (“GPS”)receiver that calculates its position by timing signals sent by GPSsatellites orbiting above the Earth. In some examples, each satellitecontinually transmits messages including the time the message was sent,a precise orbit for the satellite sending the message (the ephemeris),and the general system health and rough orbits of all GPS satellites(the almanac). These signals travel at the speed of light (which variesbetween vacuum and the atmosphere). The GPS receiver uses the arrivaltime of each message to measure the distance to each satellite, fromwhich it determines the position of the receiver (conceptually theintersection of spheres). The resulting coordinates are converted tomore user-friendly forms such as latitude and longitude or location on amap.

The electronic navigation device 305 also includes a memory 370. Thememory 370 may be any type of tangible machine-readable storage medium.The memory 370 may, for example, store the data included in the datastore 320. In some implementations, the memory 370 may storeinstructions that, when executed, cause the electronic navigation device305 to, for example, identify preferred routes to destinations andprovide electronic navigation to the destinations.

The navigation system also includes a network 380. The network 380 isconfigured to enable exchange of electronic communications betweendevices connected to the network 380. For example, the network 380 maybe configured to enable exchange of electronic communications betweenthe navigation device 305 and the direction host 390. The network 380may include, for example, one or more of the Internet, Wide AreaNetworks (WANs), Local Area Networks (LANs), analog or digital wired andwireless telephone networks (e.g., a PSTN, Integrated Services DigitalNetwork (ISDN), a cellular network, and Digital Subscriber Line (DSL)),radio, television, cable, satellite, or any other delivery or tunnelingmechanism for carrying data. Network 380 may include multiple networksor subnetworks, each of which may include, for example, a wired orwireless data pathway. The network 380 may include a circuit-switchednetwork, a packet-switched data network, or any other network able tocarry electronic communications. For example, the network 380 mayinclude networks based on the Internet protocol (IP) or asynchronoustransfer mode (ATM).

The direction host 390 is an electronic device configured to executeprograms and exchange communications with the navigation device 305(e.g., multiple navigation devices) over the network 380. For example,the direction host 390 may be configured to execute a program thatperforms navigation, mapping, routing, and searching operations. In thisexample, the direction host 390 may exchange communications with thenavigation device 305 to receive input associated with navigation androuting and provide output to the navigation device 305 based on theinput associated with navigation and routing.

The direction host 390 also may be configured to perform other processesassociated with navigation, routing, and mapping processes. For example,the direction host 390 may be configured to perform authentication ofusers of the navigation system 300 and control access privileges forusers. The direction host 390 may authenticate users who access thedirection host 390 using the navigation device 305. The direction host390 may authenticate users based on a user name and password entered bythe user or other authentication techniques such as digital signaturesor certificates. The direction host 390 may control the data aparticular user may access, the data the particular user may input andthe functions the particular user may execute based on authenticationand access privileges associated with the particular user.

Although the example electronic navigation device 305 is shown as asingle integrated component, one or more of the modules and applicationsincluded in the electronic navigation device 305 may be implementedseparately from the device 305 but in communication with the device 305.For example, the data store 320 may be implemented on a centralizedserver that communicates and exchanges data with the electronicnavigation device 305. In this example, the direction host 390 maycommunicate with the electronic navigation device 305 and performoperations described above as being performed by the electronicnavigation device 305 or may perform operations that assist in theelectronic navigation device 305 performing operations described above.

FIGS. 4, 5, 7, 9, 11, 13, 15, 17, 18, 20, 22, 24, 26, 27, 30, 32, 34,and 36 illustrate example processes. The operations of the exampleprocesses are described generally as being performed by the system 300.The operations may be performed exclusively by the electronic navigationdevice 305, may be performed exclusively by the direction host 390, ormay be performed by a combination of the electronic navigation device305 and the direction host 390. The operations may be performed by anycombination of one or more of the components of the system 300. In someimplementations, operations of the example processes may be performed byone or more processors included in one or more electronic devices.

FIG. 4 illustrates an example of a process 400 of using missed directiontracking in handling provision of directions. The system 300 accessesnavigation data describing at least one instance in which a directionwas missed during provision of electronic navigation along a route(410). For example, the system 300 may receive the navigation data overa network or access the navigation data from electronic storage. Thenavigation data may identify a direction that was missed by a driverwhen the driver was attempting to follow a route during provision ofelectronic navigation directions. The navigation data may track eachdirection provided and provide an indication of whether or not thedirection was followed. Alternatively, the navigation data may trackonly instances where the system 300 determines a direction to have beenmissed.

The system 300 tracks instances in which directions have been missedbased on the accessed navigation data (420). For instance, the system300 processes the navigation data and stores data to track misseddirections. The system 300 may store data describing each instance of adirection being missed or may maintain statistical data (e.g., a runningtotal of misses) that represents instances in which a direction ismissed.

The system 300 accounts for the tracked instances in which directionshave been missed in handling provision of future directions (430). Forexample, the system 300 performs one or more operations that assistfuture drivers in following directions that have been missed. In thisexample, the system 300 may alter routing decisions to account for(e.g., avoid) frequently missed directions and/or change presentation ofdirections to help users better follow frequently missed directions. Thesystem 300 may account for the tracked instances in which directionshave been missed by users in general (e.g., all users of an electronicnavigation network) or may account for the tracked instances in whichdirections have been missed on a user-specific basis. This disclosureprovides a number of examples of accounting for tracked instances inwhich directions have been missed in handling provision of futuredirections, any combination of which may be used together to assist oneor more users in better following directions provided.

FIG. 5 illustrates an example of a process 500 of storing directiontracking data. The system 300 monitors electronic navigation data ofusers following routes guided by electronic navigation (510). Forinstance, the system 300 electronically monitors which directions arebeing provided to users following routes guided by electronicnavigation. The system 300 may use the direction host 390 to remotelymonitor the electronic navigation data through communications with thenavigation device 305. The system 300 may use the navigation device 305to directly monitor the electronic navigation data for directions beingprovided by the navigation device 305.

The system 300 identifies instances in which an electronic navigationsystem has provided a direction to follow based on monitoring (520). Forexample, the system 300 determines when a navigation device has provideda direction to follow. In this example, the system 300 may identifydirections that are visually displayed and/or audibly output. The system300 may identify directions to follow in real time (or near real time)or may analyze stored navigation data and later analyze the storednavigation to identify instances in which an electronic navigationsystem has provided a direction to follow.

The system 300 determines whether or not the direction was followed(530). After identifying an instance in which an electronic navigationsystem has provided a direction to follow, the system 300 monitorsposition data (e.g., using data from the position detector 360) todetermine whether the identified direction was or was not properlyfollowed by the user. For example, the system 300 may access GPSposition data describing a route taken (or being taken) by thenavigation device of the user and compare the GPS position data to theroute defined by the direction. In this example, the system 300determines that the direction was followed when the comparison revealsthat the route taken (or being taken) by the navigation device of theuser matches the route defined by the direction and determines that thedirection was not properly followed when the comparison reveals that theroute taken (or being taken) by the navigation device of the user doesnot match the route defined by the direction.

The system 300 identifies one or more attributes associated with thedirection (540). In addition to determining whether or not the directionwas followed, the system 300 may identify any attributes associated withthe provided direction that may be helpful in assisting users withfollowing similar types of directions in the future. For instance, thesystem 300 may identify a date and time when the direction was provided,a direction kind that is descriptive of the direction (e.g., highwayon-ramp, traffic circle, etc.), a speed at which the user was travelingwhen the direction was provided, the weather at a time and locationwhere the direction was provided, which user was operating a vehicleassociated with the navigation device when the direction was provided,which route the user actually followed in response to the directionbeing provided, vehicles features when the direction was provided (e.g.,a volume level of an audio/music player in the vehicle, a windowopen/close setting of the vehicle, a headlight on/off setting of thevehicle, etc.), a type of vehicle, or any other attributes associatedwith the circumstances in which the direction was provided.

The system 300 stores direction tracking data describing the direction,the determination of whether or not the direction was followed, and/orthe identified one or more attributes (550). For instance, the system300 may keep a log of all directions provided that includes identifyingdata for the direction, an indication of whether or not the directionwas followed, and any attributes identified for the direction. Each timea direction is provided, the system 300 may add a new entry into the logto track how the user responded to the direction. The system 300 maystore the log at the navigation device 305 or remote from the navigationdevice (e.g., at the direction host 390). The system 300 may keep a logthat tracks all users/navigation devices or may keep a separate log foreach user/navigation device tracked.

FIG. 6 illustrates an example of a data structure 600 that storesdirection tracking data. The example data structure 600 may representstored direction tracking data as discussed above with respect toreference numeral 550. The example data structure 600 includes adirection column 601 that stores an identification of a directionprovided during electronic navigation, a result column 602 that stores aresult of whether the direction identified in the direction column 601was followed or missed, a date column 603 that stores a date that thedirection identified in the direction column 601 was provided, and atime column 604 that stores a time of day that the direction identifiedin the direction column 601 was provided. The example data structure 600also includes a direction kind column 605 that stores a description of akind of the direction identified in the direction column 601, a speedcolumn 606 that stores a speed at which a vehicle was traveling when thedirection identified in the direction column 601 was provided, and aweather column 607 that stores a description of weather conditions whenthe direction identified in the direction column 601 was provided. Theexample data structure 600 further includes a user column 608 thatstores an identification of a user to which the direction identified inthe direction column 601 was provided and a route taken column 609 thatstores the route actually taken (whether proper or not) in response tothe direction identified in the direction column 601 being provided.

FIG. 7 illustrates an example of a process 700 of determining a misspercentage. The system 300 accesses direction tracking data (710). Forexample, the system 300 may access from electronic storage or receiveover a network connection the direction tracking data stored withrespect to reference numeral 550 shown in FIG. 5. In this example, thedirection tracking data may be stored in the data structure 600 shown inFIG. 6.

The system 300 identifies entries in the direction tracking data thatcorrespond to a particular direction (720). For instance, the system 300may identify a particular direction of interest and then search thedirection tracking data to identify entries that correspond to theparticular direction. The system 300 also may search the directiontracking data for frequently missed directions and identify entries inwhich frequently missed directions have been provided.

The system 300 determines a first number of times the particulardirection has been provided based on the identified entries (730). Forexample, the system 300 computes a first number of times the particulardirection has been provided using the identified entries. In thisexample, when the direction tracking data includes all of the relevantdata under consideration, the computed first number is the total numberof the identified entries. When the direction tracking data includes asubset of the relevant data under consideration, the computed firstnumber is the total number of the identified entries plus a number ofprior instances in which the particular direction has been provided. Inthis case, the system 300 may keep a running total of the number oftimes the particular direction has been provided and update the priorrunning total to account for the total number of the identified entries.

The system 300 determines a second number of times the particulardirection has been missed based on the identified entries (740). Forexample, the system 300 analyzes the identified entries and determines,for each entry, whether the particular direction was missed or followedin that instance. The system 300 then computes a second number of missesusing the identified entries in which the particular direction wasmissed. When the direction tracking data includes all of the relevantdata under consideration, the computed second number is the total numberof the identified entries in which the particular direction was missed.When the direction tracking data includes a subset of the relevant dataunder consideration, the computed second number is the total number ofthe identified entries in which the particular direction was missed plusa number of prior instances in which the particular direction wasmissed. In this case, the system 300 may keep a running total of thenumber of times the particular direction was missed and update the priorrunning total to account for the total number of the identified entriesin which the particular direction was missed.

The system 300 computes a miss percentage for the particular directionbased on the first number of times and the second number of times (750).For instance, the system 300 computes a miss percentage by dividing thesecond number of times by the first number of times. The computed misspercentage reflects the number of times the particular direction hasbeen missed relative to the number of times the particular direction hasbeen provided.

The system 300 stores the computed miss percentage for the particulardirection to use in future handling of the particular direction (760).For example, the system 300 may store data identifying the particulardirection in association with the computed miss percentage. In thisexample, the system 300 may store the data identifying the particulardirection and the computed miss percentage in the same row of a table ofcomputed miss percentages. The system 300 may store the table at thenavigation device 305 or remote from the navigation device (e.g., at thedirection host 390). The system 300 may keep a table that tracks missedpercentages for all users/navigation devices or may keep a separatetable for each user/navigation device tracked. The table may includemultiple entries and the system 300 may repeat the process shown in FIG.7 to compute miss percentages for every direction that has been providedor compute a miss percentage for each direction that has been provided athreshold number of times.

FIG. 8 illustrates an example of a data structure 800 that stores misspercentage data. The example data structure 800 may represent computedmiss percentage data stored as discussed above with respect to referencenumeral 760. The example data structure 800 includes a direction column801 that stores an identification of a direction provided duringelectronic navigation and a times given column 802 that stores a numberof times the direction identified in the direction column 801 has beenprovided to a user. The example data structure 800 also includes a timesfollowed column 803 that stores a number of times the directionidentified in the direction column 801 was properly followed and a timesmissed column 804 that stores a number of times the direction identifiedin the direction column 801 was missed. The example data structure 800further includes a followed percentage column 805 that stores apercentage of times the direction identified in the direction column 801was properly followed and a missed percentage column 806 that stores apercentage of times the direction identified in the direction column 801was missed.

FIG. 9 illustrates an example of a process 900 of determining a misscategory. The system 300 accesses computed miss percentages fordirections (910). For instance, the system 300 may access misspercentages computed using the process described above with respect toFIG. 7. The system 300 may access the computed miss percentages fromelectronic storage or receive the computed miss percentages over anetwork. In some implementations, the system 300 may access a table thatassociates directions with corresponding miss percentages computed forthe directions. In these implementations, the system 300 may access datain a format corresponding to the data structure shown in FIG. 8.

The system 300 accesses one or more miss thresholds (920). For example,the system 300 may access from electronic storage or receive over anetwork one or more miss thresholds that are defined to identifycategories of missed directions. In this example, a single missthreshold may be accessed to determine whether a direction is relativelyfrequently missed or relatively infrequently missed. In addition,multiple miss thresholds may be used to define three or moreclassifications of miss percentage data (e.g., a relatively low misspercentage, a relatively medium miss percentage, and a relatively highmiss percentage).

The system 300 compares the computed miss percentages for directionswith the one or more miss thresholds (930). For instance, the system 300electronically compares the computed miss percentages with the one ormore miss thresholds to determine whether a computed missed percentageis greater than or less than each of the one or more miss thresholds.When comparing a computed missed percentage to multiple thresholds, thesystem 300 may identify which miss thresholds the computed misspercentage falls between.

The system 300 classifies directions into miss categories based on thecomparison (940). For example, the system 300 assigns a direction with acorresponding miss percentage to a category based on which thresholdsthe computed miss percentage meets. In this example, when a single missthreshold is used, the system 300 may classify a direction in arelatively low miss category when a computed miss percentage for thedirection is below the single miss threshold and may classify thedirection in a relatively high miss category when the computed misspercentage for the direction is above the single miss threshold. When afirst miss threshold and a second miss threshold are used, the system300 may classify a direction in a relatively low miss category when acomputed miss percentage for the direction is below the first and secondmiss thresholds, may classify the direction in a relatively medium misscategory when the computed miss percentage for the direction is betweenthe first and second miss thresholds, and may classify the direction ina relatively high miss category when the computed miss percentage forthe direction is above the first and second miss thresholds.

The system 300 stores miss category data for the classified directionsto use in future handling of the classified directions (950). Forexample, the system 300 may store data identifying classified directionsin association with the assigned miss categories. In this example, thesystem 300 may store the data identifying the classified directions andthe assigned miss categories in the same row of a table of assigned misscategories. The system 300 may store the table at the navigation device305 or remote from the navigation device (e.g., at the direction host390). The system 300 may keep a table that tracks miss categories forall users/navigation devices or may keep a separate table for eachuser/navigation device tracked. The table may include multiple entriesand the system 300 may repeat the process shown in FIG. 9 to identify amiss category for every direction that has been provided or identify amiss category for each direction that has been provided a thresholdnumber of times.

FIG. 10 illustrates an example of a data structure 1000 that stores misscategory data. The example data structure 1000 may represent misscategory data stored as discussed above with respect to referencenumeral 950. The example data structure 1000 includes a direction column1001 that stores an identification of a direction provided duringelectronic navigation, a miss category column 1002 that stores a misscategory classification of the direction identified in the directioncolumn 1001, and a followed category column 1003 that stores a followedcategory classification of the direction identified in the directioncolumn 1001. The miss category data shown in FIG. 10 may correspond tothe miss percentage data shown in FIG. 8 with the miss categoriesdetermined using a first miss threshold of ten percent and a second missthreshold of twenty-five percent.

FIG. 11 illustrates an example of a process 1100 of determining types ofprovided directions that result in frequent misses. The system 300accesses direction tracking data (1110). For example, the system 300 mayaccess from electronic storage or receive over a network connection thedirection tracking data stored with respect to reference numeral 550shown in FIG. 5. In this example, the direction tracking data may bestored in the data structure 600 shown in FIG. 6.

The system 300 identifies entries in the direction tracking data thathave similar attributes (1120). For instance, the system 300 mayidentify one or more attributes of interest and then search thedirection tracking data to identify entries that have the one or moreattributes. The identified entries may correspond to multiple, differentdirections that have similar attributes (e.g., multiple, differenttraffic circles).

The system 300 identifies types of provided directions that result infrequent misses based on the identified entries (1130). For example, thesystem 300 analyzes the identified entries that have similar attributesand determines whether directions having those attributes are frequentlymissed. In this example, the system 300 may use techniques describedabove with respect to FIG. 7 to compute a miss percentage for thedirections having the similar attributes and then use the misspercentage to determine whether or not directions having the similarattributes are frequently missed.

The system 300 may identify types of provided directions that have atleast one attribute in common. For instance, the system 300 may identifyall directions that involve traffic circles and determine thatdirections involving traffic circles are frequently missed. In anotherexample, the system 300 may identify all directions that involvefour-way stops and determine that directions involving four-way stopsare not frequently missed.

The system 300 also may consider attributes related to the time and/orcircumstances in which the direction was provided. For example, thesystem 300 may identify all directions provided when the radio was at arelatively high volume level and determine that directions provided whenthe radio is at a relatively high volume level are frequently missed. Inanother example, the system 300 may identify all directions that areprovided when the weather is rainy and determine that directionsprovided when the weather is rainy are frequently missed.

The system 300 may consider any combination of one or more attributes inidentifying types of provided directions that result in frequent misses.For example, the system 300 may identify all directions involvinghighway off ramps that were provided when the radio was at a relativelyhigh volume level, the weather was rainy, and the vehicle was travelingat a relatively fast speed and determine that directions involvinghighway off ramps that are provided when the radio was at a relativelyhigh volume level, the weather was rainy, and the vehicle was travelingat a relatively fast speed are frequently missed. In another example,the system 300 may identify all directions involving highway off rampsthat were provided when the radio was at a relatively low volume level,the weather was sunny, and the vehicle was traveling at a relativelyslow speed and determine that directions involving highway off rampsthat are provided when the radio was at a relatively low volume level,the weather was sunny, and the vehicle was traveling at a relativelyslow speed are not frequently missed. Any combination of one or more ofthe attributes described throughout this disclosure may be used inidentifying types of directions.

The system 300 stores data describing the identified types of provideddirections to use in future handling of directions of the identifiedtypes (1140). For example, the system 300 may store data identifyingtypes of provided directions in association with data indicating whetheror not the types of provided directions are frequently missed. In thisexample, the system 300 may store the data identifying the types ofprovided directions and computed miss percentages (or assigned misscategories) in the same row of a table of types of provided directions.The system 300 also may simply maintain a list of types of provideddirections that result in frequent misses. The system 300 may store thetable or list at the navigation device 305 or remote from the navigationdevice (e.g., at the direction host 390). The system 300 may keep atable or list that tracks types of provided directions for allusers/navigation devices or may keep a separate table for eachuser/navigation device tracked. The table or list may include multipleentries and the system 300 may repeat the process shown in FIG. 11 toidentify miss data for every combination of one or more attributestracked or identify miss data for each combination of one or moreattributes that has been provided a threshold number of times.

FIG. 12 illustrates an example of a data structure 1200 that stores datadescribing identified types of provided directions. The example datastructure 1200 may represent stored data describing identified types ofprovided directions as discussed above with respect to reference numeral1140. The example data structure 1200 includes a direction kind column1201 that stores a description of a kind of a direction, a speed column1202 that stores a speed range at which a vehicle travels whendirections are provided, a weather column 1203 that stores a descriptionof weather conditions when directions are provided, a volume column 1204that stores a description of radio volume when directions are provided,and a window column 1205 that stores an indication of whether one ormore windows in a vehicle are open or closed when directions areprovided. Although five attributes are shown, more or fewer attributesmay be tracked. The example data structure 1200 further includes amissed percentage column 1206 that stores a percentage of times the typeof provided direction having the attributes listed in columns 1201 to1205 has been missed and a miss category column 1207 that stores a misscategory classification (e.g., frequent or infrequent) of the type ofprovided direction having the attributes listed in columns 1201 to 1205.

FIG. 13 illustrates an example of a process 1300 of determining one ormore alternative routes that are frequently taken when a direction ismissed. The system 300 accesses direction tracking data (1310). Forexample, the system 300 may access from electronic storage or receiveover a network connection the direction tracking data stored withrespect to reference numeral 550 shown in FIG. 5. In this example, thedirection tracking data may be stored in the data structure 600 shown inFIG. 6.

The system 300 identifies entries in the direction tracking data thatcorrespond to a particular direction (1320). For instance, the system300 may identify a particular direction of interest and then search thedirection tracking data to identify entries that correspond to theparticular direction. The system 300 also may search the directiontracking data for frequently missed directions and identify entries inwhich frequently missed directions have been provided.

The system 300 identifies one or more alternative routes that arefrequently taken when the particular direction is missed based on theidentified entries (1330). For example, the system 300 analyzes theidentified entries, determines which of the identified entries relatesto a missed direction, and identifies an alternative route taken foreach of the determined entries. In this example, the system 300 analyzesthe identified alternative routes taken and determines one or more ofthe identified alternative routes that is frequently taken. The system300 may use techniques described above with respect to FIG. 7 to computea taken percentage for each of the identified alternative routes andthen use the taken percentage to determine whether or not eachalternative route is frequently taken when the direction is missed.

The system 300 stores data describing the one or more alternative routesfor the particular direction to use in future handling of the particulardirection (1340). For example, the system 300 may store data identifyinga direction in association with one or more alternative routes takenwhen the direction is missed. In this example, the system 300 may storethe data identifying the direction and an alternative route in the samerow of a table of alternative routes. The system 300 also may store dataindicating how frequently the alternative route is taken when thedirection is missed. The system 300 may store the table at thenavigation device 305 or remote from the navigation device (e.g., at thedirection host 390). The system 300 may keep a table that tracksalternative routes for all users/navigation devices or may keep aseparate table for each user/navigation device tracked. The table mayinclude multiple entries and the system 300 may repeat the process shownin FIG. 13 to identify one or more alternative routes for everydirection that has been provided or identify one or more alternativeroutes for each direction that has been provided a threshold number oftimes.

FIG. 14 illustrates an example of a data structure 1400 that storesalternative route data. The example data structure 1400 may representalternative route data stored as discussed above with respect toreference numeral 1340. The example data structure 1400 includes adirection column 1401 that stores an identification of a directionprovided during electronic navigation, an alternative route column 1402that stores an alternative route that has been taken when the directionidentified in the direction column 1401 was missed, and a percentagecolumn 1403 that stores a percentage of time the alternative routeidentified in the alternative route column 1402 has been taken when thedirection identified in the direction column 1401 was missed.

FIG. 15 illustrates an example of a process 1500 of deriving drivingprofiles. The system 300 accesses direction tracking data (1510). Forexample, the system 300 may access from electronic storage or receiveover a network connection the direction tracking data stored withrespect to reference numeral 550 shown in FIG. 5. In this example, thedirection tracking data may be stored in the data structure 600 shown inFIG. 6.

The system 300 identifies entries in the direction tracking data thatcorrespond to a particular user/device (1520). For instance, the system300 may identify a particular user/device of interest and then searchthe direction tracking data to identify entries that correspond to theparticular user/device. The system 300 may search the direction trackingdata for a particular user (regardless of which of multiple navigationdevices the particular user is using) or search the direction trackingdata for a particular navigation device (regardless of which of multipleusers is using the particular navigation device).

The system 300 derives a driving profile for the particular user/devicebased on the identified entries (1530). For example, the system 300analyzes the identified entries and derives a profile related to how theparticular user/device has followed directions in the past. In thisexample, the system 300 may track, as part of the driving profile, apercentage of time the particular user/device misses a direction, one ormore types of directions the particular user/device has missed in thepast, and a list of each direction the particular user/device has missedin the past. The system 300 may include, in the driving profile, anytype of direction tracking data and computed statistics related todirections described throughout this disclosure. The driving profile mayreflect user-specific or device-specific direction tracking data and, assuch, only may be applied in handling future directions for the specificuser or specific device associated with the driving profile.

The system 300 stores the driving profile for the particular user/deviceto use in handling provision of future directions to the particularuser/device (1540). For example, the system 300 may store dataidentifying a particular user/device in association with the deriveddriving profile data. The system 300 may store the driving profile atthe navigation device 305 or remote from the navigation device (e.g., atthe direction host 390). The system 300 may store multiple drivingprofiles for many, different users/devices and the system 300 may repeatthe process shown in FIG. 15 to derive a driving profile for eachuser/device that is part of a direction network.

FIG. 16 illustrates example driving profiles. As shown, a first drivingprofile 1610 is defined for User One. The first driving profile 1610includes a missed direction percentage 1612, a list 1614 of frequentlymissed direction types, and a list 1616 of directions that User One hasmissed in the past. The missed direction percentage 1612 reflects apercentage of all directions that User One has missed while the system300 has been tracking User One's driving. The list 1614 of frequentlymissed direction types may include any of the direction types (e.g.,combination of one or more attributes) described throughout thedisclosure. The list 1616 of directions that User One has missed in thepast identifies the specific directions that User One has missed whilethe system 300 has been tracking User One's driving.

The first driving profile 1610 also includes interface controls 1620,1622, 1624, and 1626 that enable User One to select which aspects of thefirst driving profile 1610 that User One wishes the system 300 toaccount for in providing directions to User One. The control 1620enables the user to activate the missed direction percentage and, whenactivated, the system 300 accounts for the likelihood that User One willmiss directions in determining a route to provide to User One. Thecontrol 1622 enables the user to activate the frequently misseddirection types and, when activated, the system 300 accounts for thefrequently missed direction types in handling routing and/orpresentation of directions that correspond to the frequently misseddirection types. The control 1624 enables the user to activate the pastmissed directions and, when activated, the system 300 accounts for thepast missed directions in handling routing and/or presentation ofdirections that correspond to the past missed directions. Accounting forthe past missed directions may assist User One from repeating a priormistake, even though the mistake is not common and is not frequentlymade by users in general. The control 1626 enables the user todeactivate missed direction tracking and, when selected, the system 300stops tracking missed directions for User One.

The first driving profile 1610 further includes an adjust profilecontrol 1628. The adjust profile control 1628 enables a user to adjustthe first driving profile 1610 based on any changes User One wishes tomake to the first driving profile 1610. For instance, User One may wishto lower the missed direction percentage 1612 so that the possibility ofmissed directions does not impact routing decisions as greatly. User Onealso may wish to add a type of frequently missed directions to the list1614 or may wish to remove a past missed direction from the list 1616(e.g., when another user was driving when the direction was tracked asbeing missed).

A second driving profile 1630 is defined for User N. The second drivingprofile 1630 is similar to the first driving profile 1610, but includesdata specific to User N instead of User One. The second driving profile1630 includes a missed direction percentage 1632, a list 1634 offrequently missed direction types, and a list 1636 of directions thatUser N has missed in the past. The second driving profile 1630 alsoincludes interface controls 1640, 1642, 1644, and 1646 that enable UserN to select which aspects of the second driving profile 1630 that User Nwishes the system 300 to account for in providing directions to User N.The second driving profile 1630 further includes an adjust profilecontrol 1648 that enables User N to adjust the second driving profile1630 based on any changes User N wishes to make to the second drivingprofile 1630. The system 300 may store many more driving profiles, maystore driving profiles for navigation devices, and may track more datawithin the driving profiles. Any of the data described throughout thisdisclosure may be included in the driving profiles.

FIG. 17 illustrates an example of a process 1700 of determining a routeto a destination. The system 300 accesses tracked direction data for oneor more directions under consideration in determining a route to adestination (1710). For instance, the system 300 may access trackeddirection data from electronic storage or receive tracked direction dataover a network. The system 300 may access all tracked direction data oronly access tracked direction that is relevant to the current routingdetermination. When the system 300 only accesses tracked direction datathat is relevant to the current routing determination, the system 300may identify each direction included in possible routes underconsideration and access tracked direction data for each identifieddirection if it exists. The system 300 also may limit the trackeddirection data to a region encompassing the route (e.g., trackeddirection data only for a state or county in which the route to thedestination is present).

In some implementations, the system 300 may access a list of frequentlymissed directions. In these implementations, the system 300 may comparethe list of frequently missed directions to the directions underconsideration to determine whether any of the directions underconsideration have been frequently missed.

The system 300 may access any type of direction tracking data describedthroughout this disclosure. For example, the system 300 may accesscomputed miss percentages for directions under consideration or mayaccess miss categories for directions under consideration. The system300 also may access tracked direction data for types of directions underconsideration, even though the tracked direction data may not correspondto the actual directions under consideration. The system 300 further mayaccess alternative routes data and driving profiles.

The system 300 controls use of the one or more directions in determiningthe route to the destination based on the tracked direction data for theone or more directions (1720). For example, the system 300 intelligentlyaccounts for the tracked direction data in determining the best route tothe destination. In this example, the system 300 may avoid directionsthat have been detected as being frequently missed.

In some implementations, the system 300 also may consider theprobability that a direction will be missed and the cost of missing thedirection (in terms of time and/or distance) when comparing a firstroute including the direction against a second route that does notinclude the direction, but is longer in terms of time and/or distance.In these implementations, when the product of the probability that thedirection will be missed and the cost of missing the direction exceedsthe additional time and/or distance needed to complete the second route,the system 300 selects the second route to the destination, despite thefirst route being the fastest route if the probability of a misseddirection was not taken into account. When the product of theprobability that the direction will be missed and the cost of missingthe direction is less than the additional time and/or distance needed tocomplete the second route, the system 300 selects the first route to thedestination because the likely cost of the missed direction does notoutweigh the additional time and/or distance needed to complete thesecond route.

FIG. 18 illustrates an example of a process 1800 of avoiding frequentlymissed directions. The system 300 identifies one or more frequentlymissed directions based on the tracked direction data for the one ormore directions (1810). For example, the system 300 accesses a list offrequently missed directions and compares the list of frequently misseddirections to directions under consideration in determining the route tothe destination. In this example, the system 300 identifies whichdirections under consideration have been frequently missed in the past.The system 300 also may access computed miss percentage or miss categorydata for each of the directions under consideration and determinewhether or not the directions are frequently missed based on thecomputed miss percentage or miss category data.

The system 300 avoids the one or more frequently missed directions indetermining the route to the destination (1820). For instance, thesystem 300 excludes routes that include the one or more frequentlymissed directions in determining the route to destination. As such, thesystem 300 avoids the one or more frequently missed directions in theroute to the destination and, therefore, provides a route that isrelatively easy to follow. Providing a route that is relatively easy tofollow may enhance the electronic navigation experience for usersbecause the users would be less likely to experience the aggravation andrerouting cost of a missed direction.

When the system 300 determines that it is impossible to avoid all of thefrequently missed directions, the system 300 selects a route thatincludes the fewest frequently missed directions and provides a warningto the user to alert the user that a frequently missed direction couldnot be avoided when determining the route. The system 300 also mayselect the route that includes the frequently missed direction that hasthe lowest miss percentage out of the frequently missed directions thatare impossible to avoid.

FIG. 19 illustrates an example of avoiding frequently missed directionsin determining a route to a destination. FIG. 19 includes a userinterface of a navigation device that has a mapping display area 1901that provides a display of a map of an area corresponding to a currentposition of a navigation device. The mapping display area 1901 includesa current position indicator 1902, a destination 1904, and road segments1906, 1908, 1910, 1912, and 1914 that are available in determining aroute from the current position indicator 1902 to the destination 1904.A direction area 1930 of the user interface of the navigation devicedisplays a list of directions to the destination 1904 for the routedetermined. As shown, the direction area 1930 indicates that thenavigation system determined that the best route from the currentposition indicator 1902 to the destination 1904 includes the road 1910and the road 1914.

In determining the best route from the current position indicator 1902to the destination 1904, the navigation system accounts for trackeddirection data 1940. The tracked direction data 1940 includes adirection column 1942, a frequent miss column 1944, and a misspercentage column 1946. The direction column 1942 lists directions forwhich tracked direction data exists, the frequent miss column 1944provides an indication of whether or not the direction listed in thedirection column 1942 is a frequently missed direction (e.g., adirection with a miss percentage at fifty percent or higher), and themiss percentage column 1946 indicates a percentage of time the directionlisted in the direction column 1942 has been tracked as being missed.

In the example shown in FIG. 19, the navigation system considers threeroutes in determining a route from the current position indicator 1902to the destination 1904. Specifically, the navigation system considers afirst route of the road 1906 and the road 1908, a second route of theroad 1910, the road 1912, and the road 1914, and a third route of theroad 1910 and the road 1914. The navigation system determines that thefirst route offers the shortest distance/time, the second route offersthe middle distance/time, and the third route offers the longestdistance/time. Despite this determination, the navigation systemdetermines that the third route is the preferred route when accountingfor the tracked direction data 1940. In this regard, the navigationsystem determines that the direction right onto road 1908 from road 1906is a frequently missed direction and is included in the first route. Thenavigation system also determines that the direction left onto road 1914from road 1912 is a frequently missed direction and is included in thesecond route. The navigation system further determines that the thirdroute does not include a frequently missed direction. Based on thedetermination that the first route includes a frequently misseddirection, the determination that the second route includes a frequentlymissed direction, and the determination that the third route does notinclude a frequently missed direction, the navigation system avoids thefirst and second routes and selects the third route as the preferredroute to the destination, even though the third route offers the longestdistance/time if the considered routes are properly followed. Becausethe navigation system accounts for tracked direction data 1940, thenavigation system is able to learn from past direction followingmistakes and provide a route that has a relatively high chance of beingproperly followed to the destination 1904.

FIG. 20 illustrates an example of a process 2000 of determining a routeto a destination. The system 300 determines a miss probability for oneor more directions based on the tracked direction data for the one ormore directions (2010). For instance, the system 300 accesses orcomputes a miss percentage for the one or more directions underconsideration that is based on past direction data describing howfrequently the one or more directions under consideration have or havenot been followed when provided.

The system 300 determines a miss penalty for the one or more directions(2020). The system 300 may determine a time miss penalty and/or adistance miss penalty. The system 300 may determine a miss penalty bydetermining the re-routing needed to compensate for missing thedirection. For example, the system 300 evaluates the situation thatwould occur if the direction is missed and determines a new route thatwould be used to the extent the direction is missed. In this example,the system 300 determines an additional distance and/or an additionalestimated time needed to complete the new route as compared to travelingthe original route without missing the direction.

As one example, suppose a highway includes a first exit that leads to afirst road at a first point and a second exit that leads to the firstroad at a second point. In this example, suppose a best route to adestination includes taking the first exit to the first road andtraveling on the first road to a third point of the first road. Thesystem 300 computes a first distance and a first estimated time fortaking the first exit to the first point on the first road and travelingon the first road from the first point to the third point. The system300 also considers a situation in which the first exit is missed anddetermines that the second exit is the next best route for reaching thedestination when the first exit is missed. Based on the determinationthat the second exit is the next best route for reaching the destinationwhen the first exit is missed, the system 300 computes a second distanceand a second estimated time for traveling from the first exit to thesecond exit, taking the second exit to the second point on the firstroad, and traveling on the first road from the second point to the thirdpoint. After computing the first distance and the second distance, thesystem 300 computes a distance miss penalty for missing the first exitby subtracting the first distance from the second distance. In addition,after computing the first estimated time and the second estimated time,the system 300 computes a time miss penalty for missing the first exitby subtracting the first estimated time from the second estimated time.

The system 300 computes an estimated time and/or distance for one ormore routes including the one or more directions based on the determinedone or more miss probabilities and the one or more miss penalties(2030). For example, the system 300 computes a distance and an estimatedtime for traveling along a route without missing any directions. In thisexample, the system 300 then updates the computed distance and thecomputed estimated time to account for the determined one or more missprobabilities and the one or more miss penalties. In particular, thesystem 300 accesses a miss probability for each direction included inthe route and a time and distance miss penalty for each directionincluded in the route.

To adjust the computed distance for the route, the system 300 multipliesthe miss probability for each direction by the distance miss penalty forthe corresponding direction and computes a sum of the results of eachmultiplication. The system 300 then adds the distance sum to thecomputed distance for the route to arrive at an estimated distance thataccounts for miss probabilities and miss penalties.

To adjust the computed time for the route, the system 300 multiplies themiss probability for each direction by the time miss penalty for thecorresponding direction and computes a sum of the results of eachmultiplication. The system 300 then adds the time sum to the computedestimated time for the route to arrive at an estimated time thataccounts for miss probabilities and miss penalties.

In some implementations, the system 300 may not account for missprobability and miss penalty for all of the directions in the route. Inthese implementations, the system 300 may determine to account for onlythose directions that result in frequent misses and adjust the originalcomputed distance and the original computed estimated time forcompleting the route based on miss probabilities and miss penalties fordirections identified as resulting in frequent misses. For instance, thesystem 300 may identify all of the frequently missed directions includedin the route and compute a summation of product computed by multiplyingmiss probability by miss penalty for each of the frequently misseddirections.

In the example described above with respect to reference numeral 2020,the system 300 may use miss probability and miss penalty data to computean estimated distance and an estimated time for taking the first exit tothe first point on the first road and traveling on the first road fromthe first point to the third point. The system 300 accesses a missprobability for properly taking the first exit from the highway that iscomputed based on past direction tracking data. To compute the estimateddistance, the system 300 multiplies the accessed miss probability by thecomputed distance miss penalty and adds a result of the multiplicationto the first distance computed above. To compute the estimated time, thesystem 300 multiplies the accessed miss probability by the computed timemiss penalty and adds a result of the multiplication to the firstestimated time computed above.

The system 300 determines a route to the destination based on theestimated time and/or distance for the one or more routes including theone or more directions (2040). For example, the system 300 may use anytype of routing process to select a best route to the destination usingthe estimated time and/or distance for the one or more routes includingthe one or more directions. In this example, the system 300 may identifya best route for which the estimated distance is the shortest and/or theestimated time is the shortest. The best route that accounts for missprobabilities and miss penalties may not be the shortest route or thefastest route when all direction are properly followed. Specifically,the shortest route may have one or more frequently missed directionsthat increase its estimated distance to above the estimated distance ofthe determined best route when miss probabilities and miss penalties aretaken into account. Likewise, the fastest route may have one or morefrequently missed directions that increase its estimated time to abovethe estimated time of the determined best route when miss probabilitiesand miss penalties are taken into account.

FIG. 21A illustrates an example of determining a route to a destinationbased on miss penalty data computed for directions under consideration.FIG. 21B illustrates data used in determining the route to thedestination in the example shown in FIG. 21A. FIG. 21A includes a userinterface of a navigation device that has a mapping display area 2101that provides a display of a map of an area corresponding to a currentposition of a navigation device. The mapping display area 2101 includesa current position indicator 2102, a destination 2104, and road segments2106, 2108, 2110, 2112, 2114, 2116, 2118, 2120, 2122, 2124, 2126, and2128 that are available in determining a route from the current positionindicator 2102 to the destination 2104. A direction area 2130 of theuser interface of the navigation device displays a list of directions tothe destination 2104 for the route determined. As shown, the directionarea 2130 indicates that the navigation system determined that the bestroute from the current position indicator 2102 to the destination 2104includes the road segment 2114, the road segment 2116, and the roadsegment 2118. The direction area 2130 also includes an alert thatindicates that the fastest route was avoided due to average miss penaltyand an input control 2135 that allows a user to change the route to thefastest route without regard for the average miss penalty. In thisregard, the user may choose to take the fastest route if the userbelieves a missed direction is unlikely and desires to take the fastestroute. In some examples, the navigation system may display the alertwith additional information related to the fastest route to helpfacilitate the decision. For instance, the navigation system may displaythe alert with an indication of the difference in distance and/orestimated time of the fastest route as compared to the best routeselected when accounting for average miss penalty.

In determining the best route from the current position indicator 2102to the destination 2104, the navigation system accounts for the datashown in FIG. 21B. The data shown in FIG. 21B includes routing data 2140that includes distance and estimated time data for each road segmentunder consideration in determining the best route from the currentposition indicator 2102 to the destination 2104. As shown, the routingdata 2140 includes a table having a first column that includes a roadsegment identifier, a second column that indicates a distance of theroad segment identified in the first column, and a third column thatindicates an estimated time for traveling the road segment identified inthe first column.

In addition, the data shown in FIG. 21B includes possible routes data2150, miss penalty data 2160, and possible routes data 2170 thataccounts for the miss penalty data 2160. The possible routes data 2150includes a row for each possible route to the destination using the roadsegments under consideration shown in FIG. 21A. The possible routes data2150 includes a table having a first column that has routeidentification information (e.g., a list of the road segments that makeup the possible route), a second column that indicates a distance to thedestination along the possible route identified in the first column, anda third column that indicates an estimated time for traveling to thedestination using the possible route identified in the first column.

The miss penalty data 2160 describes miss penalties for frequentlymissed directions that are included in the directions underconsideration in determining the best route from the current positionindicator 2102 to the destination 2104. In this example, the directionof turn right onto road segment 2112 from road segment 2110 is the onlyfrequently missed direction under consideration (e.g., the direction ofturn right onto road segment 2112 from road segment 2110 has a misspercentage above a frequent miss threshold and all other directionsunder consideration have a miss percentage below the frequent missthreshold). In other examples, the miss penalty data 2160 may includemiss penalty data for more, and perhaps many more, frequently misseddirections under consideration.

The miss penalty data 2160 includes a row for each alternative routethat may be taken when the frequently missed direction is missed. Asshown, the first row identifies a route that occurs when a driver missesthe direction of turn right onto road segment 2112 from road segment2110 by turning too early onto road segment 2120. The second rowidentifies a route that occurs when a driver misses the direction ofturn right onto road segment 2112 from road segment 2110 by turning toolate onto road segment 2124. The miss penalty data 2160 includes adistance column that indicates an additional distance needed to followthe alternative route when the direction is missed and a time columnthat indicates an additional time needed to follow the alternative routewhen the direction is missed.

The third row identifies an average miss penalty for missing thedirection of turn right onto road segment 2112 from road segment 2110.As shown, the average miss penalty weights all of the possiblealternatives routes equally (fifty percent each in this case). In someimplementations, the average miss penalty may weight possiblealternative routes differently based on how frequently each of thealternative routes being considered has been taken when the directionhas been missed in the past (e.g., twenty-five percent for a firstalternative route and seventy-five percent for a second alternativeroute). The average miss penalty includes both an average additionaldistance and an average additional time needed when the direction ismissed.

The fourth row identifies a miss-probability-adjusted average misspenalty. In this example, the direction of turn right onto road segment2112 from road segment 2110 has been missed at a frequency oftwenty-five percent based on tracked direction data. Accordingly, theaverage additional distance and the average additional time needed isreduced to twenty-five percent of the average penalty to account for theprobability that the direction will be missed.

The possible routes data 2170 that accounts for miss penalties includesa table having a first column that has route identification information(e.g., a list of the road segments that make up the possible route), asecond column that indicates an estimated distance to the destinationalong the possible route identified in the first column, and a thirdcolumn that indicates an estimated time for traveling to the destinationusing the possible route identified in the first column. As shown, themiss-probability-adjusted average miss penalty is added to the distanceand the time estimated as being needed to complete possible routes underconsideration that include the frequently missed direction. In thisexample, the frequently missed direction is included in only the firstpossible route and, therefore, the miss-probability-adjusted averagemiss penalty is added to the estimated distance and the estimated timefor the first possible route. The second, third, and fourth possibleroutes under consideration are the same regardless of whether the misspenalty data 2160 is taken into account because the second, third, andfourth possible routes do not include any frequently missed directions.

In determining the best route from the current position indicator 2102to the destination 2104, the system uses the possible routes data 2170that accounts for miss penalties. As shown, the fourth possible route(i.e., 2114, 2116, 2118) is selected as the best route because it hasthe shortest estimated distance and the shortest estimated time whenmiss penalties are taken into consideration. The fourth possible route(i.e., 2114, 2116, 2118) is selected over the first possible route(i.e., 2106, 2108, 2110, 2112), even though the first possible route hasthe shortest distance and the shortest estimated time if all directionsare properly followed. However, the miss penalty associated with thefrequently missed direction included in the first possible routeincreases the estimated distance and the estimated time for the firstpossible route above the estimated distance and the estimated time forthe fourth possible route. Accordingly, the fourth possible route isselected as the best route when the navigation system takes the misspenalty into account.

FIG. 22 illustrates an example of a process 2200 of determining a routeto a destination based on alternative routes that are frequently takenwhen a direction is missed. The system 300 determines one or morealternative routes that are frequently taken when the one or moredirections are missed based on the tracked direction data for the one ormore directions (2210). For instance, the system 300 accesses fromelectronic storage or derives an alternative route frequently taken wheneach of the directions under consideration is missed. The system 300 maydetermine one or more alternative routes only for those directions underconsideration that have been identified as being frequently missed.

The system 300 determines an estimated time and/or distance fornavigating the one or more alternative routes that are frequently takenwhen the one or more directions are missed (2220). For instance, thesystem 300 computes a distance and an estimated time for traveling thefrequently taken alternative route using mapping and routing data.

The system 300 computes a miss penalty for the one or more directionsbased on the estimated time and/or distance for navigating the one ormore alternative routes that are frequently taken (2230). For example,the system 300 determines a distance miss penalty for missing adirection as the estimated distance computed for an alternative routethat is frequently taken when the direction is missed. Similarly, inthis example, the system 300 determines a time miss penalty for missingthe direction as the estimated time computed for the alternative routethat is frequently taken when the direction is missed. In this regard,the system 300 uses (or weights more heavily) the frequently takenalternative route to provide a more realistic assessment of the actualpenalty for missing the direction. Specifically, the direction may bemissed in several different ways that each have a different (perhaps, avastly different) miss penalty. By accounting for only the frequentlytaken alternative route (or at least weighting the frequently takenalternative route more heavily), the system 300 computes a miss penaltythat reflects the most likely scenario that would occur if the directionis missed.

FIG. 23A illustrates an example of determining a route to a destinationbased on miss penalty data computed for directions under considerationusing frequent alternative routes. FIG. 23B illustrates data used indetermining the route to the destination in the example shown in FIG.23A. FIG. 23A includes a user interface of a navigation device that hasa mapping display area 2101 that provides a display of a map of an areacorresponding to a current position of a navigation device. The mappingdisplay area 2101 includes a current position indicator 2102, adestination 2104, and road segments 2106, 2108, 2110, 2112, 2114, 2116,2118, 2120, 2122, 2124, 2126, and 2128 that are available in determininga route from the current position indicator 2102 to the destination2104. A direction area 2330 of the user interface of the navigationdevice displays a list of directions to the destination 2104 for theroute determined. As shown, the direction area 2330 indicates that thenavigation system determined that the best route from the currentposition indicator 2102 to the destination 2104 includes the roadsegment 2106, the road segment 2108, the road segment 2110, and the roadsegment 2112.

In determining the best route from the current position indicator 2102to the destination 2104, the navigation system accounts for the datashown in FIG. 23B. The data shown in FIG. 23B includes routing data 2340that includes distance and estimated time data for each road segmentunder consideration in determining the best route from the currentposition indicator 2102 to the destination 2104. As shown, the routingdata 2340 includes a table having a first column that includes a roadsegment identifier, a second column that indicates a distance of theroad segment identified in the first column, and a third column thatindicates an estimated time for traveling the road segmented identifiedin the first column.

In addition, the data shown in FIG. 23B includes possible routes data2350, miss penalty data 2360, and possible routes data 2370 thataccounts for the miss penalty data 2360. The possible routes data 2350includes a row for each possible route to the destination using the roadsegments under consideration shown in FIG. 23A. The possible routes data2350 includes a table having a first column that has routeidentification information (e.g., a list of the road segments that makeup the possible route), a second column that indicates a distance to thedestination along the possible route identified in the first column, anda third column that indicates an estimated time for traveling to thedestination using the possible route identified in the first column.

The miss penalty data 2360 describes miss penalties for frequentlymissed directions that are included in the directions underconsideration in determining the best route from the current positionindicator 2102 to the destination 2104. In this example, the directionof turn right onto road segment 2112 from road segment 2110 is the onlyfrequently missed direction under consideration (e.g., the direction ofturn right onto road segment 2112 from road segment 2110 has a misspercentage above a frequent miss threshold and all other directionsunder consideration have a miss percentage below the frequent missthreshold). In other examples, the miss penalty data 2160 may includemiss penalty data for more, and perhaps many more, frequently misseddirections under consideration.

The miss penalty data 2360 includes a row for a frequently takenalternative route that is frequently taken when the frequently misseddirection is missed. As shown, the first row identifies a route thatoccurs when a driver misses the direction of turn right onto roadsegment 2112 from road segment 2110 by turning too early onto roadsegment 2120. The miss penalty data 2360 includes a distance column thatindicates an additional distance needed to follow the frequently takenalternative route when the direction is missed and a time column thatindicates an additional time needed to follow the frequently takenalternative route when the direction is missed. Although otheralternative routes may be possible when the frequently missed directionis missed, the navigation system accounts for only the frequently takenalternative route because it is the most common alternative route and,therefore, represents the most likely miss penalty should the frequentlymissed direction actually be missed.

In some implementations, the navigation system may account for multiple,frequently taken alternative routes. Also, the navigation system mayaccount for all possible alternative routes and simply assign aweighting to each possible alternative route based on the probability(e.g., an alternative route taken percentage) that the correspondingalternative route will be the one followed when the direction is missed.The weighting may be assigned based on an alternative route takenpercentage and the weighting may control contribution of the misspenalty associated with the corresponding alternative route to the misspenalty used in assessing potential impact of missing the frequentlymissed direction.

The second row identifies a miss-probability-adjusted miss penalty forthe frequently taken alternative route. In this example, the directionof turn right onto road segment 2112 from road segment 2110 has beenmissed at a frequency of twenty-five percent based on tracked directiondata. Accordingly, the additional distance and the additional timeneeded for the frequently taken alternative route is reduced totwenty-five percent of the miss penalty for the frequently takenalternative route, which accounts for the probability that the directionwill be missed.

The possible routes data 2370 that accounts for miss penalties includesa table having a first column that has route identification information(e.g., a list of the road segments that make up the possible route), asecond column that indicates an estimated distance to the destinationalong the possible route identified in the first column, and a thirdcolumn that indicates an estimated time for traveling to the destinationusing the possible route identified in the first column. As shown, themiss-probability-adjusted miss penalty is added to the distance and thetime estimated as being needed to complete possible routes underconsideration that include the frequently missed direction. In thisexample, the frequently missed direction is included in only the firstpossible route and, therefore, the miss-probability-adjusted misspenalty is added to the estimated distance and the estimated time forthe first possible route. The second, third, and fourth possible routesunder consideration are the same regardless of whether the miss penaltydata 2360 is taken into account because the second, third, and fourthpossible routes do not include any frequently missed directions.

In determining the best route from the current position indicator 2102to the destination 2104, the system uses the possible routes data 2370that accounts for miss penalties. As shown, the first possible route(i.e., 2106, 2108, 2110, 2112) is selected as the best route because ithas the shortest estimated distance and the shortest estimated time whenmiss penalties are taken into consideration. Although the miss penaltyincreases the estimated distance and the estimated time for the firstpossible route (i.e., 2106, 2108, 2110, 2112), the first possible routeremains the possible route with the shortest estimated distance and theshortest estimated time. Accordingly, the first possible route isselected as the best route.

FIG. 24 illustrates an example of a process 2400 of determining a routeto a destination that accounts for types of frequently misseddirections. The system 300 determines whether the one or more directionsare types of directions that result in frequent misses based on thetracked direction data for the one or more directions (2410). Forexample, the system 300 accesses a list of types of directions thatresult in frequent misses and compares the list of types of directionsthat result in frequent misses to types of directions underconsideration in determining the route to the destination. In thisexample, the system 300 identifies which directions under considerationhave a type that has been frequently missed in the past. The system 300also may access computed miss percentage or miss category data for eachtype of direction under consideration and determine whether or not thetype of direction has been frequently missed based on the computed misspercentage or miss category data. Because the system 300 considers atype of direction, the system 300 is able to flag potential misses evenif the user has not traveled the actual directions under considerationin the past or if one or more directions under consideration arerelatively new directions for which a sufficient amount of directiontracking does not currently exist to determine whether the newdirections are or are not frequently missed.

The system 300 controls use of the one or more directions in determiningthe route to the destination based on the determination of whether theone or more directions are types of directions that result in frequentmisses (2420). For example, the system 300 intelligently accounts forthe types of directions that result in frequent misses in determiningthe best route to the destination. In this example, the system 300 mayavoid directions that have been determined to have a type that has beenfrequently missed.

In some implementations, the system 300 also may consider theprobability that a type of direction will be missed and the cost ofmissing a direction of the type (in terms of time and/or distance) whencomparing a first route including the direction of the type against asecond route that does not include a direction of the type, but islonger in terms of time and/or distance. In these implementations, whenthe product of the probability that the type of direction will be missedand the cost of missing the direction of the type exceeds the additionaltime and/or distance needed to complete the second route, the system 300selects the second route to the destination, despite the first routebeing the fastest route if the probability of a missed direction was nottaken into account. When the product of the probability that the type ofdirection will be missed and the cost of missing the direction of thetype is less than the additional time and/or distance needed to completethe second route, the system 300 selects the first route to thedestination because the likely cost of the missed direction does notoutweigh the additional time and/or distance needed to complete thesecond route.

FIG. 25 illustrates an example of determining a route based on types ofdirections that result in frequent misses. FIG. 25 includes a userinterface of a navigation device that has a mapping display area 2101that provides a display of a map of an area corresponding to a currentposition of a navigation device. The mapping display area 2101 includesa current position indicator 2102, a destination 2104, and road segments2106, 2108, 2110, 2112, 2114, 2116, 2118, 2120, 2122, 2124, 2126, and2128 that are available in determining a route from the current positionindicator 2102 to the destination 2104. The mapping display area 2101also includes a direction type alert 2510 and a wrong interface control2520. The direction type alert 2510 provides an indication that aparticular type of frequently missed direction has been identified andindicates which portion of the mapping display area 2101 has led to theidentification of the particular type of frequently missed direction. Asshown, the navigation system has identified the road including the roadsegments 2108, 2110, and 2122 as being a traffic circle and displayedthe direction type alert 2510 to indicate that the road including theroad segments 2108, 2110, and 2122 has been identified as a trafficcircle. The wrong interface control 2520 is a control that enables auser to indicate that the particular type of frequently missed directionhas not been properly identified in the directions under consideration.When a user activates the wrong interface control 2520, the navigationsystem ignores the identification of the particular type of frequentlymissed direction and determines a route from the current positionindicator 2102 to the destination 2104 without taking into account theparticular type of frequently missed direction originally identified.

A direction area 2530 of the user interface of the navigation systemdisplays a list of directions to the destination 2104 for the routedetermined based on the particular type of frequently missed direction.As shown, the direction area 2530 indicates that the navigation systemdetermined that the best route from the current position indicator 2102to the destination 2104 includes the road segment 2114, the road segment2116, and the road segment 2118. The direction area 2530 also includesan alert that indicates that a traffic circle was avoided in determiningthe fastest route and an input control 2535 that allows a user to changethe route to the fastest route without avoiding traffic circles. In thisregard, the user may choose to take the fastest route, even if itinvolves a traffic circle. In some examples, the navigation system maydisplay the alert with additional information related to the fastestroute to help facilitate the decision. For instance, the navigationsystem may display the alert with an indication of the difference indistance and/or estimated time of the fastest route that includes atraffic circle as compared to the best route selected when avoiding thetraffic circle.

In determining the best route from the current position indicator 2102to the destination 2104, the navigation system avoids the traffic circleidentified as being a type of direction that is frequently missed. Inassessing potential routes from the current position indicator 2102 tothe destination 2104 that avoid the traffic circle, the navigationsystem determines that, using the road segments under consideration,only one route from the current position indicator 2102 to thedestination 2104 exists. Specifically, the navigation system determinesthat a route including the road segment 2114, the road segment 2116, andthe road segment 2118 avoids the traffic circle and reaches thedestination 2104. Accordingly, the navigation system determines that theroute including the road segment 2114, the road segment 2116, and theroad segment 2118 is the best route to the destination that avoids thetraffic circle.

FIG. 26 illustrates an example of a process 2600 of controllingpresentation of directions. The system 300 accesses tracked directiondata for one or more directions included in a route to be presented to auser (2610). For instance, the system 300 may access tracked directiondata from electronic storage or receive tracked direction data over anetwork. The system 300 may only access tracked direction for directionsincluded in the route to be presented to the user.

In some implementations, the system 300 may access a list of frequentlymissed directions. In these implementations, the system 300 may comparethe list of frequently missed directions to the directions included inthe route to be presented to the user to determine whether any of thedirections included in the route to be presented to the user have beenfrequently missed.

The system 300 may access any type of direction tracking data describedthroughout this disclosure. For example, the system 300 may accesscomputed miss percentages for directions included in the route to bepresented to the user or may access miss categories for directionsincluded in the route to be presented to the user. The system 300 alsomay access direction tracking data for types of directions included inthe route to be presented to the user, even though the tracked directiondata may not correspond to the actual directions included in the routeto be presented to the user. The system 300 further may accessalternative routes data and driving profiles.

The system 300 controls presentation of the one or more directions basedon the tracked direction data for the one or more directions (2620). Forexample, the system 300 may determine how to present the one or moredirections based on the tracked direction data. In this example, thesystem 300 may determine whether a direction is frequently missed andpresent the direction in a first manner if it is not frequently missedand present the direction in a second, different manner if it isfrequently missed. In this regard, the system 300 may present frequentlymissed directions differently than frequently followed directions toprovide additional assistance in following the frequently misseddirections while not inundating users with additional assistance when itis not needed for frequently followed directions.

The system 300 may change presentation, to a user, of a particulardirection after the user has been detected as missing the particulardirection in the past. For instance, when the direction is presented tothe user the first time, the system 300 may present the direction in afirst manner. If the user misses the direction the first time it ispresented, the system 300 may modify the presentation of the directionto a second manner that provides additional assistance following thedirection when the direction is presented to the user a second time thatis subsequent to the first time.

The system 300 may use any type of presentation technique describedthroughout this disclosure to control presentation of directions basedon tracked direction data. For instance, the system 300 may alterpresentation formats for directions, control timing of when directionsare presented to users relative to when the direction is to be followed,and provide alerts and miss category identifiers. Any type ofpresentation control that assists users in following frequently misseddirections may be used.

Although this disclosure primarily describes presenting directions tousers on an electronic navigation device (e.g., a portablenavigation-specific device, a smart phone with navigation functionality,a built-in vehicle navigation system, etc.), the system 300 may controlpresentation of directions on other formats using similar techniques.For example, a mapping website may present users with directions from astarting location to a destination location over a web interface that auser may print. In this example, the mapping website may controlpresentation of directions to users based on tracked direction data.Specifically, the mapping website system may access direction trackingdata and control presentation of directions using the direction trackingdata. In this regard, the mapping website system may provide alerts forfrequently missed directions, provide miss category identifiers fordirections, and/or control description of directions to highlightfrequently taken alternative routes to assist a user in avoiding commonmistakes made in following the directions. The mapping website systemalso may provide additional re-routing directions for frequently misseddirections to assist the user in returning to a proper route if the usermisses the frequently missed directions. The additional re-routingdirections may be needed because the mapping website system is notproviding electronic navigation along the route and cannot updatedirections to assist the user when a missed direction occurs. Any of thedirection lists and maps described throughout this disclosure may bepresented by the mapping website system in static format. The mappingwebsite system also may account for direction tracking data indetermining routes to destinations using any of the techniques describedthroughout this disclosure.

FIG. 27 illustrates an example of a process 2700 of providing anindication of a miss category for a direction. The system 300 determinesa miss category for the one or more directions based on the trackeddirection data for the one or more directions (2710). For instance, thesystem 300 accesses or computes a miss category for the one or moredirections included in a route that is based on past direction datadescribing how frequently the one or more directions included in theroute have or have not been followed when provided. The system 300 mayuse two, three, or more types of miss categories in classifyingdirections.

The system 300 provides an indication of the miss category for the oneor more directions in presenting the one or more directions (2720). Forexample, the system 300 may present the one or more directions with anindicator that enables a user to determine the miss category for thecorresponding direction. In this example, the system 300 may use asymbol, a miss category description, a font color, and/or a font size toindicate miss category and differentiate directions having differentmiss categories. The system 300 may provide the indication of the misscategory as a visible output on a user interface and/or as audibleoutput from a speaker. The system 300 may present miss categoryindicators for directions included in a list of directions.

In some implementations, the system 300 may dynamically provide misscategory indicators as the system 300 provides electronic navigationalong a route. In these implementations, the system 300 may determine amiss category for the next direction in the route and present anindication of the miss category as the direction is approaching. Whenthe direction is a frequently missed direction, the indication of themiss category may be an alert that a frequently missed direction isapproaching and that the user should pay close attention to followingthe direction.

FIG. 28 illustrates an example of providing an indication of a misscategory in presenting one or more directions. FIG. 28 includes a userinterface of a navigation device that has a mapping display area 2801that provides a display of a map of an area corresponding to a currentposition of a navigation system. The mapping display area 2801 includesa current position indicator 2802, a destination 2804, and road segments2810, 2820, 2830, 2840, 2850, 2860, and 2870 that are part of adetermined route from the current position indicator 2802 to thedestination 2804. The navigation system may have determined the routeusing tracked direction data (e.g., miss categories for potentialdirections) or may have determined the route using the shortest distanceor shortest estimated time without regard for tracked direction data.

A direction area 2880 of the user interface of the navigation devicedisplays a list of directions to the destination 2804 for the routedetermined. As shown, the direction area 2880 indicates that thenavigation system determined that the best route from the currentposition indicator 2102 to the destination 2104 includes the roadsegment 2810, the road segment 2820, the road segment 2830, the roadsegment 2840, the road segment 2850, the road segment 2860, and the roadsegment 2870. The direction area 2880 also includes directioninformation that describes how the route is followed to reach thedestination 2804. The direction area 2880 further includes a misscategory identifier for each direction included in the direction area2880. As shown, the direction area 2880 includes three types of misscategory identifiers, each representing a different miss category.Specifically, a first miss category identifier identifies directionsthat have a relatively high miss frequency, a second miss categoryidentifier identifies directions that have a relatively medium missfrequency, and a third miss category identifier identifies directionsthat have a relatively low miss frequency. The first, second, and thirdmiss category identifiers have different shapes and also may havedifferent colors to assist a user in quickly assessing a miss categoryassociated with a direction. The miss category identifiers provide auser with information related to how easy directions in the route are tofollow and an indication of which directions the user needs to pay closeattention to when following the route. Although three miss categoryidentifiers have been shown, more or fewer miss category identifiers maybe used.

In presenting miss category identifiers, the navigation systemdetermines a miss category for each direction included in the route,identifies a miss category identifier that corresponds to the determinedmiss category, and displays the identified miss category identifier inassociation with a description of the direction. To determine the misscategory for a direction, the navigation system may classify thedirection into a miss category using techniques described above withrespect to FIG. 9 or may simply access stored miss category data (e.g.,the data shown in FIG. 10) for directions in the route. Afterdetermining the miss category for the direction, the navigation systemdisplays the direction with a miss category identifier that correspondsto the determined miss category. In the example shown in FIG. 28, thenavigation system determines that directions one and five have arelatively high miss frequency and displays an exclamation pointidentifier, which may be red, in association with each of directions oneand five to indicate that directions one and five are associated with arelatively high missed direction category. In addition, the navigationsystem determines that direction six has a relatively medium missfrequency and displays a triangle identifier, which may be yellow, inassociation with direction six to indicate that direction six isassociated with a relatively medium missed direction category. Further,the navigation system determines that directions two, three, and fourhave a relatively low miss frequency and displays a circle identifier,which may be green, in association with each of directions two, three,and four to indicate that directions two, three, and four are associatedwith a relatively low missed direction category.

FIGS. 29A and 29B illustrate examples of providing an indication of amiss category in presenting one or more directions. FIGS. 29A and 29Binclude a user interface of a navigation device that has a mappingdisplay area 2801 that provides a display of a map of an areacorresponding to a current position of a navigation system. The mappingdisplay area 2801 includes a current position indicator 2802, adestination 2804, and road segments 2810, 2820, 2830, 2840, 2850, 2860,and 2870 that are part of a determined route to the destination 2804.The navigation system may have determined the route using trackeddirection data (e.g., miss categories for potential directions) or mayhave determined the route using the shortest distance or shortestestimated time without regard for tracked direction data.

As shown in FIG. 29A, a direction area 2910A of the user interface ofthe navigation device displays an approaching direction. In thisexample, the direction area 2910A indicates that direction one isapproaching and also provides an alert that indicates direction one is afrequently missed direction. Specifically, when the navigation systemdetermines that direction one is approaching, the navigation systemaccesses miss category data for direction one and determines that themiss category data indicates that direction one is a frequently misseddirection. In response to determining that direction one is a frequentlymissed direction, the navigation system determines to provide the alertwhen outputting a description of direction one. The navigation systemmay audibly output the alert using a speaker in addition to or insteadof providing the alert on a visible interface. The alert may assist auser in following directions because the user will be alerted that afrequently missed direction is approaching.

As shown in FIG. 29B, a direction area 2910B of the user interface ofthe navigation device displays an approaching direction. In thisexample, the direction area 2910B indicates that direction five isapproaching and also provides an alert that indicates direction five isa frequently missed direction. Specifically, when the navigation systemdetermines that direction five is approaching, the navigation systemaccesses miss category data for direction five and determines that themiss category data indicates that direction five is a frequently misseddirection. In response to determining that direction five is afrequently missed direction, the navigation system determines to providethe alert when outputting a description of direction five. Thenavigation system may audibly output the alert using a speaker inaddition to or instead of providing the alert on a visible interface.The alert may assist a user in following directions because the userwill be alerted that a frequently missed direction is approaching.

In presenting directions two to four and six, the navigation system mayaccesses miss category data for directions two to four and six and maydetermine that the miss category data indicates that directions two tofour and six are not frequently missed directions. Accordingly, inresponse to determining that directions two to four and six are notfrequently missed directions, the navigation system determines not toprovide an alert when outputting a description of directions two to fourand six.

FIG. 30 illustrates an example of a process 3000 of adjustingpresentation of frequently missed directions. The system 300 identifiesone or more frequently missed directions based on the tracked directiondata for the one or more directions (3010). For example, the system 300accesses a list of frequently missed directions and compares the list offrequently missed directions to directions included in the route to thedestination. In this example, the system 300 identifies which directionsin the route have been frequently missed in the past. The system 300also may access computed miss percentage or miss category data for eachof the directions in the route and determine whether or not thedirections are frequently missed based on the computed miss percentageor miss category data.

The system 300 determines presentation changes that provide additionalassistance in following the one or more frequently missed directions(3020). For instance, the system 300 determines one or more enhancementsto the presentation of a direction that provide additional assistance infollowing the direction. The system 300 may make any type ofpresentation changes in an attempt to make it easier for a user tofollow the direction. The system 300 may intelligently select whichtypes of presentation changes to make based on the type of direction andadditional information related to the direction that is available.

In some implementations, the system 300 determines to change timing ofpresenting a direction when providing electronic navigation. In theseimplementations, the system 300 may determine to present a directionearlier to a user to provide the user with more time to interpret andfollow the direction. The system 300 also may provide reminders for thedirection to the user more frequently. The more frequent reminders mayprovide additional assistance to a user in following the direction andmay ensure the direction information is more frequently perceived (e.g.,seen, heard, etc.) by the user as the user attempts to follow thedirection.

In some examples, the system 300 may determine changes to displayproperties and/or visual presentation of directions included in theroute. In these examples, the system 300 may determine that anadjustment in brightness and/or contrast of the displayed user interfacemay assist the user in more effectively perceiving description of thedirection. The system 300 also may determine to adjust a font sizeand/or a font color to assist a user in quickly perceiving thedirection. The system 300 further may determine to adjust presentationof the direction by zooming in and/or out of the area corresponding tothe direction that is displayed on a mapping area of a navigationdevice.

In addition, the system 300 may modify a number of directions presentedto a user at one time. For instance, the system 300 may present multipledirections to a user at one time to enable the user to perceive themultiple directions in advance and foreshadow the route that is beingfollowed. Presenting multiple directions in advance may assist a user infollowing a route because the user may be more prepared for upcomingdirections than in an approach that displays one direction at a time,particularly when the system 300 presents a series of directions at arelatively high frequency when providing electronic navigation along theroute.

In some implementations, the system 300 may adjust audio characteristicsin presenting the directions. In these implementations, the system 300may audibly output frequently missed directions at a louder volume thannormal directions that are not frequently missed. The system 300 alsomay lower a radio volume when audibly outputting directions forfrequently missed directions.

In some examples, the system 300 may provide additional descriptiondetails when presenting frequently missed directions as compared to theamount of detail provided when presenting normal directions that are notfrequently missed. In these examples, the system 300 may presentadditional guiding information to give a user more detailed informationon how to follow the direction. For instance, the system 300 may provideangle information for turns (e.g., change right turn to ninety degreeright turn) or provide additional turn description information (e.g.,change right turn to slight right turn). The system 300 also maydetermine to add landmarks to the presentation of the directions, sothat the user can reference the landmarks when following the directions.The landmarks may include points of interest that are maintained by thesystem 300 and that correspond to the direction or directions beingpresented.

Further, the system 300 may present a more detailed view of a vehiclefollowing the direction. In this regard, the system 300 may present ablown up view of the direction and provide a graphic showing a vehicleproperly following the direction.

The system 300 adjusts presentation of the one or more frequently misseddirections based on the presentation changes to provide additionalassistance in following the one or more frequently missed directions(3030). For example, the system 300 may store, in electronic storage,the presentation changes such that the system 300 presents the one ormore frequently missed directions with the presentation changes the nexttime the one or more frequently missed directions are presented. In thisexample, the system 300 outputs the one or more frequently misseddirections with additional information that assists one or more users infollowing the one or more frequently missed directions. The additionalinformation may include an adjusted (e.g., increased) amount ofinformation to provide more details for guiding a user along thedirection. The adjustment of presentation of the one or more frequentlymissed directions may be user-specific or may apply generally tomultiple, different users (e.g., all users).

FIG. 31 illustrates an example of adjusting presentation of a frequentlymissed direction. FIG. 31 includes a user interface of a navigationdevice that has a mapping display area 2801 that provides a display of amap of an area corresponding to a current position of a navigationsystem. The mapping display area 2801 includes a current positionindicator 2802, a destination 2804, and road segments 2810, 2820, 2830,2840, 2860, and 2870 that are part of a determined route from thecurrent position 2802 to the destination 2804. The navigation system mayhave determined the route using tracked direction data (e.g., misscategories for potential directions) or may have determined the routeusing the shortest distance or shortest estimated time without regardfor tracked direction data.

As shown in FIG. 31, a direction area 3105 of the user interface of thenavigation device displays an approaching direction. In this example,the direction area 3105 indicates that direction one is approaching andalso provides detailed description information for direction one. Forinstance, the detailed description information may include moredescription information than typically provided. The additional detailmay be identified by comparing the description of direction one in FIG.31 as compared to the description of direction one in FIG. 29A.Specifically, when the navigation system determines that direction oneis approaching and that direction one is a frequently missed direction,the navigation system outputs a detailed description of direction one.As shown, the system 300 outputs that direction one is a one hundredthirty-five degree left turn onto road segment 2820 and that roadsegment 2820 is between road segment 3110 and road segment 3120 that arepresent at the intersection. The system 300 also determines that arestaurant 3130 is a point of interest that may be helpful in presentingas a landmark in guiding a user through direction one. Specifically, thesystem 300 outputs description information that the user should stayright of the restaurant 3130 in properly following direction one.

In addition, the system 300 displays a blown up or zoomed inrepresentation 3140 of direction one. The representation 3140 shows alarger view of a mapping area corresponding to direction one to assist auser in quickly perceiving the direction that needs to be followed. Therepresentation 3140 also includes an indication of the direction thatneeds to be followed (e.g., the increased thickness of the linesrepresenting the proper execution of the direction). Other types ofrepresentations may be used.

FIG. 32 illustrates an example of a process 3200 of providing anindication of a frequently-taken alternative route for a misseddirection. The system 300 determines one or more alternative routes thatare frequently taken when the one or more directions are missed based onthe tracked direction data for the one or more directions (3210). Forinstance, the system 300 accesses from electronic storage or derives analternative route frequently taken when each of the directions in theroute is missed. The system 300 may determine one or more alternativeroutes only for those directions in the route that have been identifiedas being frequently missed.

The system 300 provides an indication of the one or more alternativeroutes that are frequently taken when the one or more directions aremissed in presenting the one or more directions (3220). For example, thesystem 300 may present the one or more directions with a description ofan alternative route frequently taken when a direction is missed. Inthis example, the system 300 may provide a description that identifiesthe frequently taken alternative route and describes how users in thepast have missed the proper direction and arrived on the frequentlytaken alternative route (e.g., users turn too early onto the frequentlytaken alternative route or users turn too late onto the frequently takenalternative route). The system 300 may provide the indication of thealternative route as a visible output on a user interface and/or asaudible output from a speaker. The system 300 may present alternativeroutes for all directions included in a list of directions. The system300 may present alternative routes for only frequently missed directionsincluded in a list of directions.

In some implementations, the system 300 may dynamically providealternative route indications as the system 300 provides electronicnavigation along a route. In these implementations, the system 300 maydetermine a frequently taken alternative route for the next direction inthe route and present an indication of the frequently taken alternativeroute as the direction is approaching. Presentation of the frequentlytaken alternative route may assist the user in avoiding common mistakesmade by the user and/or others users in the past. The frequently takenalternative route may be dynamically presented only for those directionsthat have been frequently missed in the past.

FIGS. 33A, 33B, and 33C illustrate examples of providing an indicationof one or more alternative routes that are frequently taken inpresenting one or more directions. FIGS. 33A, 33B, and 33C include auser interface of a navigation device that has a mapping display area2801 that provides a display of a map of an area corresponding to acurrent position of a navigation system. The mapping display area 2801includes a current position indicator 2802, a destination 2804, and roadsegments 2810, 2820, 2830, 2840, 2850, 2860, and 2870 that are part of adetermined route to the destination 2804. The navigation system may havedetermined the route using tracked direction data (e.g., miss categoriesfor potential directions) or may have determined the route using theshortest distance or shortest estimated time without regard for trackeddirection data.

As shown in FIG. 33A, a direction area 3310A of the user interface ofthe navigation device displays an approaching direction. In thisexample, the direction area 3310A indicates that direction one isapproaching and also provides an alert that indicates direction one hasa relatively high miss frequency (e.g., provides an ALERT message).Specifically, when the navigation system determines that direction oneis approaching, the navigation system determines that direction one hasa relatively high miss frequency using tracked direction data. Inresponse to determining that direction one has a relatively high missfrequency, the navigation system determines to provide the alert whenoutputting a description of direction one and also accesses alternativeroute data to determine whether a frequently taken alternative routeexists. In this example, the navigation system identifies a road segment3320 as a frequently taken alternative route for direction one andincludes the frequently taken alternative route in the direction area3310A. The navigation system may audibly output the alert and frequentlytaken alternative route using a speaker in addition to or instead ofproviding the alert and frequently taken alternative route on a visibleinterface. The alert with the frequently taken alternative route mayassist a user in following directions because the user will be alertedthat a frequently missed direction is approaching and will be providedwith additional information related to a common mistake (e.g., turningtoo early onto road segment 3320) to assist the user in avoiding thecommon mistake.

As shown in FIG. 33B, a direction area 3310B of the user interface ofthe navigation device displays an approaching direction. In thisexample, the direction area 3310B indicates that direction five isapproaching and also provides an alert that indicates direction five hasa relatively high miss frequency (e.g., provides an ALERT message).Specifically, when the navigation system determines that direction fiveis approaching, the navigation system determines that direction five hasa relatively high miss frequency using tracked direction data. Inresponse to determining that direction one has a relatively high missfrequency, the navigation system determines to provide the alert whenoutputting a description of direction five and also accesses alternativeroute data to determine whether a frequently taken alternative routeexists. In this example, the navigation system identifies a road segment3330 as a frequently taken alternative route for direction five andincludes the frequently taken alternative route in the direction area3310B. The navigation system may audibly output the alert and frequentlytaken alternative route using a speaker in addition to or instead ofproviding the alert and frequently taken alternative route on a visibleinterface. The alert with the frequently taken alternative route mayassist a user in following directions because the user will be alertedthat a frequently missed direction is approaching and will be providedwith additional information related to a common mistake (e.g., turningtoo late onto road segment 3330) to assist the user in avoiding thecommon mistake.

As shown in FIG. 33C, a direction area 3310C of the user interface ofthe navigation device displays an approaching direction. In thisexample, the direction area 3310C indicates that direction six isapproaching and also provides an alert that indicates direction six hasa relatively medium miss frequency (e.g., provides a CAUTION message).Specifically, when the navigation system determines that direction sixis approaching, the navigation system determines that direction six hasa relatively medium miss frequency using tracked direction data. Inresponse to determining that direction six has a relatively medium missfrequency, the navigation system determines to provide the caution whenoutputting a description of direction six and also accesses alternativeroute data to determine whether a frequently taken alternative routeexists. In this example, the navigation system identifies a road segment3340 that indicates a frequently taken alternative route for directionsix and includes the frequently taken alternative route indication inthe direction area 3310C. The navigation system may audibly output thecaution and frequently taken alternative route indication using aspeaker in addition to or instead of providing the caution andfrequently taken alternative route indication on a visible interface.The caution with the frequently taken alternative route indication mayassist a user in following directions because the user will be cautionedthat a direction with a relatively medium miss frequency is approachingand will be provided with additional information related to a commonmistake (e.g., passing the road segment 2870 without turning) to assistthe user in avoiding the common mistake. The frequently takenalternative route indication may assist a user in quickly determiningthat the direction has been missed (e.g., a message indicating that “Ifyou reach route 3340 at a traffic light, you've missed the turn”),instead of continuing to look for the missed direction.

In presenting directions two to four, the navigation system maydetermine that directions two to four have a relatively low missfrequency using tracked direction data. Accordingly, in response todetermining that directions two to four have a relatively low missfrequency, the navigation system determines not to provide an alert,caution, or alternative route information when outputting a descriptionof directions two to four.

FIG. 34 illustrates an example of a process 3400 of controllingpresentation of directions based on types of directions that result infrequent misses. The system 300 determines whether the one or moredirections are types of directions that result in frequent misses basedon the tracked direction data for the one or more directions (3410). Forexample, the system 300 accesses a list of types of directions thatresult in frequent misses and compares the list of types of directionsthat result in frequent misses to types of directions included in theroute. In this example, the system 300 identifies which directions inthe route have a type that has been frequently missed in the past. Thesystem 300 also may access computed miss percentage or miss categorydata for each type of direction in the route and determine whether ornot the type of direction has been frequently missed based on thecomputed miss percentage or miss category data. Because the system 300considers a type of direction, the system 300 is able to flag potentialmisses even if the user has not traveled the actual directions in theroute in the past or if one or more directions under consideration arerelatively new directions for which a sufficient amount of directiontracking does not currently exist to determine whether the newdirections are or are not frequently missed.

The system 300 controls presentation of the one or more directions basedon the determination of whether the one or more directions are types ofdirections that result in frequent misses (3420). For example, thesystem 300 may determine how to present the one or more directions basedon whether the one or more directions are types of directions thatresult in frequent misses. In this example, the system 300 may determinewhether a direction is a type of frequently missed direction and presentthe direction in a first manner if it is not a type of frequently misseddirection and present the direction in a second, different manner if itis a type of frequently missed direction. In this regard, the system 300may present types of frequently missed directions differently than typesof frequently followed directions to provide additional assistance infollowing the types of frequently missed directions while not inundatingusers with additional assistance when it is not needed for types offrequently followed directions.

The system 300 may change presentation, to a user, of a particular typeof direction after the user has been detected as missing the particulartype of direction in the past. For instance, when the type of directionis presented to the user the first time, the system 300 may present thetype of direction in a first manner. If the user misses the type ofdirection the first time it is presented, the system 300 may modify thepresentation of the type of direction to a second manner that providesadditional assistance following the type of direction when the type ofdirection is presented to the user a second time that is subsequent tothe first time. The direction presented the second time may be differentthan the direction presented the first time, but is the same type ofdirection. By examining the type of direction, the system 300 may assista user in following types of problematic directions, even though theuser has not traveled the particular direction in the route in the past.

The system 300 may use any type of presentation technique describedthroughout this disclosure to control presentation of directions basedon whether the directions are types of directions that result infrequent misses. For instance, the system 300 may alter presentationformats for types of frequently missed directions, control timing ofwhen types of frequently missed directions are presented to usersrelative to when the directions are to be followed, and provide alertsand miss category identifiers for types of frequently missed directions.Any type of presentation control that assists users in following typesof frequently missed directions may be used.

FIG. 35 illustrates an example of controlling presentation of adirection based on a determination that the direction is a type ofdirections that results in frequent misses. FIG. 35 includes a userinterface of a navigation device that has a mapping display area 2101that provides a display of a map of an area corresponding to a currentposition of a navigation device. The mapping display area 2101 includesa current position indicator 2102, a destination 2104, and road segments2106, 2108, 2110, 2112, 2114, 2116, 2118, 2120, 2122, 2124, 2126, and2128 that are available in determining a route to the destination 2104.The navigation system determines that the road segments 2108, 2110, and2122 are part of a traffic circle and that traffic circles are types offrequently missed directions. In this example, the navigation systemdetermines that the route including road segments 2106, 2108, 2110, and2112 is the best route to the destination 2104, even though the routeincludes a frequently missed type of direction (e.g., a traffic circle).

A direction area 3510 of the user interface of the navigation systemdisplays directions based on the current position of the navigationsystem. As shown, the direction area 3510 provides directions fornavigating the traffic circle included in the route. For instance, thenavigation system determines that the directions involving the trafficcircle are approaching based on the current position of the navigationsystem and also determines that the approaching traffic circledirections are types of directions that result in frequent misses,although the specific traffic circle that involves the road segments2108, 2110, and 2122 may or may not include directions that themselveshave been identified as frequently missed. Based on the determinationthat the approaching traffic circle directions are types of directionsthat result in frequent misses, the navigation system controlspresentation of the traffic circle directions accordingly and providesadditional assistance to a user in following the traffic circledirections.

As shown, the direction area 3510 displays an alert indicating that afrequently missed type of direction is approaching and alternative routeinformation that notes that users often exit the traffic circle tooearly onto the road segment 2120. The direction area 3510 furtherdisplays the traffic circle directions with more detailed descriptioninformation than typical directions that do not involve a frequentlymissed type of direction. For instance, as shown, the direction area3510 provides a description of all directions needed to navigate thetraffic circle with relatively detailed instructions for navigating thetraffic circle.

FIG. 36 illustrates an example of a process 3600 of user-specifichandling of directions based on a driving profile for a user. The system300 identifies a particular user/device that is requesting directions(3610). For instance, the system 300 receives a request for directionsand identifies the particular user or particular device that isrequesting directions based on the request. The system 300 may parseidentification information (e.g., a user identifier or a deviceidentifier) from the request for directions and use the identificationinformation to determine the identity of the particular user or theparticular device that is requesting directions. In implementations inwhich the system 300 allows a user to login to a direction service or anavigation device, the system 300 may determine the identity of the useras the user currently logged into the direction service or thenavigation device. In implementations in which a user is able to requestdirections through a navigation device, the system 300 may determine theparticular device requesting directions by identifying the navigationdevice being used to request directions.

The system 300 accesses a driving profile derived for the particularuser/device based on tracked direction data for the particularuser/device (3620). For instance, the system 300 may access a drivingprofile from electronic storage or receive a driving profile over anetwork. The system 300 may use identification information identifiedfor the particular user/device to select, from among multiple, differentdriving profiles, the driving profile derived for the particularuser/device.

The driving profile may include any type of direction tracking datadescribed throughout this disclosure and tracked for the particularuser/device. The system 300 may access driving profiles similar to thosedescribed above with respect to FIGS. 15 and 16.

The system 300 accounts for the driving profile in handling provision ofdirections to the particular user/device (3630). For example, the system300 performs one or more operations that assist the particularuser/device in following directions based on direction or past drivingdata tracked specifically for the particular user/device. In thisexample, the system 300 may alter routing decisions to account for(e.g., avoid) directions (or types of directions) frequently missed bythe particular user/device and/or change presentation of directions forthe particular user/device to help the particular user/device betterfollow frequently missed directions. This disclosure provides a numberof examples of accounting for the tracked direction data in handlingprovision of future directions, any combination of which may be usedtogether to assist the particular user/device in better followingdirections provided to the particular user/device based on the drivingprofile for the particular user/device.

FIGS. 37A and 37B illustrate examples of determining a route to adestination based on driving profiles derived for users/devices. FIG.37A includes a user interface of a navigation device that has a mappingdisplay area 2101 that provides a display of a map of an areacorresponding to a current position of a navigation device. The mappingdisplay area 2101 includes a current position indicator 2102, adestination 2104, and road segments 2106, 2108, 2110, 2112, 2114, 2116,2118, 2120, 2122, 2124, 2126, and 2128 that are available in determininga route from the current position indicator 2102 to the destination2104. The user interface shown in FIG. 37A illustrates an example ofdetermining a route to a destination based on a driving profile derivedfor user one. The route for user one may be determined based on thedriving profile 1610 for user one shown in FIG. 16.

A direction area 3710A of the user interface of the navigation devicedisplays a list of directions to the destination 2104 for the routedetermined. As shown, the direction area 3710A indicates that thenavigation system determined that the best route from the currentposition indicator 2102 to the destination 2104 includes the roadsegment 2114, the road segment 2116, and the road segment 2118. Thedirection area 3710A also includes an alert that indicates that thefastest route was avoided due to a traffic circle and an input control3720 that allows a user to change the route to the fastest route withoutregard for the traffic circle. In this regard, the user may choose totake the fastest route if the user believes a missed direction isunlikely and desires to take the fastest route. In some examples, thenavigation system may display the alert with additional informationrelated to the fastest route to help facilitate the decision. Forinstance, the navigation system may display the alert with an indicationof the difference in distance and/or estimated time of the fastest routeas compared to the best route selected when accounting for the drivingprofile 1610 of user one and, thus, avoiding traffic circles.

In determining the best route from the current position indicator 2102to the destination 2104, the navigation system accounts for the drivingprofile 1610 of user one shown in FIG. 16. In this regard, the drivingprofile 1610 of user one indicates that traffic circles are types ofdirections that are frequently missed by user one. Accordingly, whendetermining a route from the current position indicator 2102 to thedestination 2104 for user one, the navigation system avoids trafficcircles because user one's driving profile indicates that user onefrequently misses directions that involve traffic circles. As such, thenavigation system determined that the best route from the currentposition indicator 2102 to the destination 2104 includes the roadsegment 2114, the road segment 2116, and the road segment 2118, eventhough faster routes exist that involve traffic circles.

FIG. 37B includes a user interface of a navigation device that has amapping display area 2101 that provides a display of a map of an areacorresponding to a current position of a navigation device. The mappingdisplay area 2101 includes a current position indicator 2102, adestination 2104, and road segments 2106, 2108, 2110, 2112, 2114, 2116,2118, 2120, 2122, 2124, 2126, and 2128 that are available in determininga route from the current position indicator 2102 to the destination2104. The user interface shown in FIG. 37B illustrates an example ofdetermining a route to a destination based on a driving profile derivedfor user N. The route for user N may be determined based on the drivingprofile 1630 for user N shown in FIG. 16.

A direction area 3710B of the user interface of the navigation devicedisplays a list of directions to the destination 2104 for the routedetermined. As shown, the direction area 3710B indicates that thenavigation system determined that the best route from the currentposition indicator 2102 to the destination 2104 includes the roadsegment 2106, the road segment 2108, the road segment 2110, and the roadsegment 2112.

In determining the best route from the current position indicator 2102to the destination 2104, the navigation system accounts for the drivingprofile 1630 of user N shown in FIG. 16. In this regard, the drivingprofile 1630 of user N indicates that traffic circles are not types ofdirections that are frequently missed by user N. Instead, the drivingprofile 1630 indicates that user N frequently misses quick turns (e.g.,turns where less than a hundredth of a mile exists between turns) andhigh density of turns (e.g., greater than four turns in a quarter mile).Accordingly, when determining a route from the current positionindicator 2102 to the destination 2104 for user N, the navigation systemdetermines that the directions under consideration do not include typesof directions frequently missed by user N because user N's drivingprofile indicates that user N does not frequently miss directions thatinvolve traffic circles and the directions under consideration do notinclude any areas with quick turns or a high density of turns. As such,the navigation system determined that the best route from the currentposition indicator 2102 to the destination 2104 includes the roadsegment 2106, the road segment 2108, the road segment 2110, and the roadsegment 2112 because it is the fastest route to the destination 2104possible.

FIGS. 38A and 38B illustrate examples of controlling presentation ofdirections based on driving profiles derived for users/devices. FIGS.38A and 38B include a user interface of a navigation device that has amapping display area 2801 that provides a display of a map of an areacorresponding to a current position of a navigation system. The mappingdisplay area 2801 includes a current position indicator 2802, adestination 2804, and road segments 2810, 2820, 2830, 2840, 2850, 2860,and 2870 that are part of a determined route to the destination 2804.The navigation system may have determined the route using trackeddirection data (e.g., miss categories for potential directions) or mayhave determined the route using the shortest distance or shortestestimated time without regard for tracked direction data.

As shown in FIG. 38A, a direction area 3810A of the user interface ofthe navigation device displays an approaching direction to user one. Inthis example, the direction area 3810A indicates that direction five isapproaching and also provides a description of direction five. Thenavigation system presents direction five in a normal manner based onthe driving profile 1610 of user one shown in FIG. 16. Specifically, thenavigation system determines whether the approaching directions (e.g.,direction five and direction six) are identified, in the driving profile1610 of user one, as types of directions frequently missed by user one.In this case, user one's driving profile 1610 indicates that user onefrequently misses directions involving traffic circles and off ramps. Inthis regard, because the driving profile 1610 indicates that user onedoes not frequently miss quick directions (e.g., directions that occurin a relatively short period of time) and the directions underconsideration do not include any traffic circles or off ramps, thenavigation system presents direction five to user one in a normalmanner.

As shown in FIG. 38B, a direction area 3810B of the user interface ofthe navigation device displays an approaching direction to user N. Inthis example, the direction area 3810B indicates that direction five isapproaching and also provides an alert indicating that quick turns areapproaching. The navigation system presents a detailed description ofdirection five and also includes a detailed description of direction sixbased on the driving profile 1630 of user N shown in FIG. 16.Specifically, the navigation system determines whether the approachingdirections (e.g., direction five and direction six) are identified, inthe driving profile 1630 of user N, as types of directions frequentlymissed by user N. In this case, user N's driving profile 1630 indicatesthat user N frequently misses quick directions (e.g., turns where lessthan a hundredth of a mile exists between turns). In this regard,because the driving profile 1630 indicates that user N frequently missesquick directions (e.g., directions that occur in a relatively shortperiod of time) and directions five and six include a quick turn, thenavigation system presents direction five to user N in an enhancedmanner.

The enhanced manner involves providing an alert indicating that afrequently missed type of direction is approaching, providing moredetailed description of approaching directions five and six than istypical to provide, and presenting direction six earlier than typical toshow all portions of the quick turn in advance of the user having toexecute the turn. The user interfaces described with respect to FIGS. 1,2, 19, 21A, 23A, 25, 28, 29A, 29B, 31, 33A, 33B, 33C, 35, 37A, 37B, 38A,and 38B may be rendered on a display device and at least one processormay be used to generate input to the display device to cause the displaydevice to render the user interfaces. For instance, a portableelectronic navigation device may include a processor and a displaydevice. In operation of the portable electronic navigation device, theprocessor may be configured to generate one or more video signals thatcause the display device to render a display of the user interfacesdescribed above with respect to FIGS. 1, 2, 19, 21A, 23A, 25, 28, 29A,29B, 31, 33A, 33B, 33C, 35, 37A, 37B, 38A, and 38B.

In some implementations, the system 300 may predetermine and cacheparticular routing directions to provide the cached directions to a usermore quickly when needed, rather than having to take the time todetermine or calculate the directions when needed. For instance, when anavigation system detects that a user has missed a direction included ina route for which electronic navigation is being provided, thenavigation system calculates re-routing directions or a new route, whichoften directs the user back to the route the user should have beenfollowing. However, in calculating re-routing directions or a new route,the user often is not provided with any direction information for asignificant period of time and may become frustrated or confused. Inaddition, at times, the user misses the first direction included in there-routing directions because the first direction comes so quickly afterthe recalculation process completes. This may result in another misseddirection and more recalculation, which can be frustrating for the user.To improve re-routing or routing in general, the system 300 may store orcache routing directions so that the system 300 can present the cachedrouting directions immediately when needed without taking the time tocalculate new routing directions. In this regard, the system 300 maystore or cache re-routing directions needed if a direction is missed andthen access and present the cached re-routing directions as soon as thedirection is detected as being missed without needing to calculate there-routing directions.

In some examples, the system 300 stores or caches re-routing directionsfor only the next direction included in a route to a destination. Inthese examples, once the system 300 detects that the direction has beenproperly followed, the system 300 deletes the cached re-routingdirections, pre-calculates re-routing directions for the next direction,and replaces the deleted re-routing directions with the pre-calculatedre-routing directions for the next direction. The system 300 may storeor cache re-routing directions for a subset of multiple directionsincluded in the route (e.g., the next two or three directions) to beprepared for a high density of directions or quick turns wheresufficient time between directions may not exist to pre-calculate all ofthe needed re-routing directions in advance of reaching the direction.The system 300 may detect these types of situations and pre-calculatemultiple sets of re-routing directions only when these types ofsituations are detected. The system 300 may pre-calculate and store orcache re-routing directions for every direction included in a route forwhich electronic navigation is being provided.

In some implementations, the system 300 may use tracked direction datato determine which directions to pre-calculate and cache re-routingdirections. In these implementations, the system 300 may identifyfrequently missed directions included in a route and pre-calculate andcache re-routing directions for the directions identified as beingfrequently missed. In addition, the system 300 may identify frequentlytaken alternative routes when a direction is missed and pre-calculateand cache re-routing directions for the situations in which thefrequently taken alternative routes are taken in missing the directions.The system 300 may only cache re-routing directions for frequentlymissed directions and may only cache re-routing directions forsituations in which a frequently taken alternative route is taken.

In addition or as an alternative to pre-calculating and cachingre-routing directions, the system 300 may pre-calculate and cache routesto particular destinations in advance. For example, the system 300 mayallow a user to select a pre-defined number of destinations or points ofinterest and the system 300 may continuously pre-calculate and cachedirections to the pre-defined number of destinations or points ofinterest as the user travels. In this example, the system 300 maydisplay a list of the pre-calculated and cached directions with userinterface controls that enable a user to select a particular destinationor point of interest and immediately receive the cached directions tothe particular destination or point of interest without the delay neededto calculate a route. The system 300 may allow the user to select apre-defined number (e.g., a relatively small number) of destinations orpoints of interest because the system 300 only has the processing andstorage capability to pre-calculate and cache a limited number ofroutes.

In some implementations, the system 300 may continuously pre-calculateand store a route to a user's home destination. In theseimplementations, the system 300 may receive user input defining a user'shome destination and continuously determine and cache directions to theuser's home destination while the user travels. Accordingly, when theuser selects a “Go Home” input control, the system 300 accesses thecached directions to the user's home destination and begins providingelectronic navigation to the user's home destination without delay.

In another example, the system 300 may continuously pre-calculate andstore a turn around route that includes directions on how to mostquickly turn around and go the opposite direction on the road which theuser is currently traveling. In this example, the system 300 maycontinuously determine and cache directions on how to most quickly turnaround. Accordingly, when the user selects a “Turn Around” inputcontrol, the system 300 accesses the cached directions for turningaround and begins providing electronic navigation on how to turn aroundwithout delay. The turn around directions may be helpful when a user isdriving on a highway and learns of a reason (e.g., an emergency) thatthe user needs to turn around and go the opposite direction on thehighway. By providing the turn around directions quickly without theneed for direction calculation, the user may be able to turn around assoon as possible without going further down the highway than isnecessary or selecting an inappropriate turn around point.

In yet another example, the system 300 may continuously pre-calculateand store a route to a type of point of interest (e.g., a hospital, agas station, a particular restaurant, etc.). In these implementations,the system 300 may receive user input defining a type of point ofinterest, and continuously determine the closest type of point ofinterest and cache directions to the closest type of point of interestwhile the user travels. Accordingly, when the user selects a “Point ofInterest” input control, the system 300 accesses the cached directionsto the closest point of interest and begins providing electronicnavigation to the closest point of interest without delay. This may behelpful when a user is driving and learns of a reason (e.g., anemergency) that the user needs to arrive at the point of interestquickly. For instance, an emergency may occur and the user may need togo to the nearest hospital as quickly as possible. In addition, the usermay determine that fuel is needed in the user's vehicle and the userneeds to quickly find the closest gas station. Because these routes arepre-calculated and cached, the system 300 begins providing directionswithout delay when the routes are needed to enhance the user'sconvenience in arriving at the destination as quickly as possible.

In some implementations, the system 300 may persistently display, on anavigation device interface, a set of buttons for the pre-defineddestinations or points of interest for which the system 300 ispre-calculating and caching directions. In these implementations, a usermay merely press one of the buttons as the user is traveling toimmediately cause electronic navigation to begin to the selecteddestination or point of interest. For instance, the system 300 maydisplay a set of buttons including a “Go Home” button, a “Friend'sHouse” button, a “Turn Around” button, a “Hospital” button, a “GasStation” button, a “Restaurant One” button, and a “Restaurant Two”button. A user may select any one of the buttons to begin receivingelectronic navigation to the corresponding destination or point ofinterest using cached directions to the corresponding destination orpoint of interest. The system 300 may display additional information inassociation with the buttons, such as a distance and/or an estimatedtime to the corresponding destination or point of interest. Theadditional information may assist the user in selecting whichdestination or point of interest to select (e.g., select restaurant twoover restaurant one because the nearest restaurant two is closer thanthe nearest restaurant one).

In some examples, the system 300 may define a priority of which routesto cache. In these examples, if the system 300 does not have theprocessing capability to calculate and cache routes for all of thedestinations and points of interest prior to the next change indirection, the system 300 may use the defined priority to select whichroutes to pre-calculate and an order for pre-calculation. For instance,the system 300 may receive user input defining a priority order ofhospital, gas station, turn around, go home, restaurant one, restauranttwo, and friend's house. Based on this priority order, the system 300pre-calculates and caches a route to the closest hospital first, then aroute to the closest gas station, then a turn around route, then a routeto the user's home, then a route to the closest restaurant one, then aroute to the closest restaurant two, and finally a route to the friend'shouse. The system 300 may determine which routes are the easiest tocalculate (e.g., the turn around route) and determine those first, so atleast some of the routes are available if needed.

In some implementations, the system 300 stores or caches only the firstfew directions needed to get the user going in the correct directiontoward the selected destination or point of interest. In theseimplementations, when a cached route to a destination or point ofinterest is selected, the system 300 begins providing electronicnavigation using the subset of cached directions. While the system 300is providing electronic navigation using the subset of cacheddirections, the system 300 calculates directions for the remainder ofthe route in the background and seamlessly continues providingelectronic navigation along the route using the calculated directionsfor the remainder of the route after the subset of cached directionshave been provided. In determining the amount of directions to determineand cache, the system 300 may select an appropriate number of directionsso that the system 300 has enough time to calculate the directions forthe remainder of the route before the selected directions have all beenprovided.

In terms of updating cached directions, the system 300 may update allcached routes each time a road is passed. The system 300 also may updatea particular cached route when the first direction in the cached routeno longer becomes possible. For instance, suppose a user is travelingalong a highway and the first direction included in the particularcached route is to take exit five from the highway. As the user travelsalong the highway passing exits one, two, three, and four, the system300 determines that a need does not exist to update the particularcached route because the first direction included in the particularcached route remains valid. However, once the user passes exit five, thesystem 300 detects that the first direction included in the particularcached route is no longer valid and, therefore, updates the cached routeto the destination or point of interest.

For routes to a point of interest, the system 300 may have to select theclosest point of interest from among multiple, different points ofinterest prior to caching a route to the point of interest. In thisregard, the system 300 may determine the best route to each of themultiple, different points of interest and compare the best routes todetermine which point of interest can be reached in the shortestdistance and/or the shortest amount of time. Although this technique maybe applied, when a large number of possible points of interest exist,the system 300 may not have time to determine the best route to each ofthe points of interest. In this situation, the system 300 may select theclosest point of interest based on absolute distance from the currentposition of the navigation device. After selecting the closest point ofinterest based on absolute distance from the current position of thenavigation device, the system 300 pre-calculates and caches a route tothe selected point of interest. Although absolute distance may notprovide the best point of interest because routing considerations maymake it more difficult to travel to the closest point of interest ascompared to the next closest point of interest, the system 300 tradesoff accuracy for expediency and still may achieve a useful result. Insome examples, when a relatively small number (e.g., two or three) ofthe multiple points of interest are close in terms of being the closestpoint of interest, the system 300 may determine the best route to eachof the relatively small number of points of interest and select the bestpoint of interest out of the relatively small number of points ofinterest.

The described techniques may be implemented using a navigation device(e.g., a personal navigation assistant, a portable navigation assistant,etc.). A navigation device may include any device that receives GPSsignals for the purpose of determining a present location of the device.These devices may be used in military, commercial aviation, and consumerproduct applications. In some implementations, the navigation device mayfeature interactive street maps that also may show points of interest,route information, and step-by-step routing directions. These may bededicated navigation devices or multi-function devices such as PDAs,smartphones, or laptop computers running GPS navigation software.

The described systems, methods, and techniques may be implemented indigital electronic circuitry, computer hardware, or in combinations ofthese elements and software. Apparatus implementing these techniques mayinclude appropriate input and output devices, a computer processor, anda computer program product tangibly embodied in a machine-readablestorage device for execution by a programmable processor. A processimplementing these techniques may be performed by a programmableprocessor executing a program of instructions to perform desiredfunctions by operating on input data and generating appropriate output.The techniques may be implemented in one or more computer programs thatare executable on a programmable system including at least oneprogrammable processor coupled to receive data and instructions from,and to transmit data and instructions to, a data storage system, atleast one input device, and at least one output device. Each computerprogram may be implemented in a high-level procedural or object-orientedprogramming language, or in assembly or machine language if desired; andin any case, the language may be a compiled or interpreted language.Suitable processors include, by way of example, both general and specialpurpose microprocessors. Generally, a processor will receiveinstructions and data from a read-only memory and/or a random accessmemory. Storage devices suitable for tangibly embodying computer programinstructions and data include all forms of non-volatile memory,including by way of example semiconductor memory devices, such asErasable Programmable Read-Only Memory (EPROM), Electrically ErasableProgrammable Read-Only Memory (EEPROM), and flash memory devices;magnetic disks such as internal hard disks and removable disks;magneto-optical disks; and Compact Disc Read-Only Memory (CD-ROM). Anyof the foregoing may be supplemented by, or incorporated in,specially-designed ASICs (application-specific integrated circuits).

It will be understood that various modifications may be made. Forexample, other useful implementations still could be achieved if stepsof the disclosed techniques were performed in a different order and/orif components in the disclosed systems were combined in a differentmanner and/or replaced or supplemented by other components. Accordingly,other implementations are within the scope of the following claims.

What is claimed is:
 1. A computer-implemented method of handlingprovision of electronic directions, the method comprising: accessingnavigation data describing at least one instance in which a directionwas missed during provision of electronic navigation along a route;tracking instances in which directions have been missed based on theaccessed navigation data; and accounting for the tracked instances inwhich directions have been missed in handling provision of futuredirections.
 2. The method of claim 1: wherein tracking instances inwhich directions have been missed based on the accessed navigation datacomprises: monitoring electronic navigation data of users followingroutes guided by electronic navigation; identifying instances in whichan electronic navigation system has provided a direction to follow;determining whether or not the direction was followed; identifying oneor more attributes associated with the direction; and storing, inelectronic storage, direction tracking data describing the direction,the determination of whether or not the direction was followed, and theidentified one or more attributes; and wherein accounting for thetracked instances in which directions have been missed in handlingprovision of future directions comprises accounting for the storeddirection tracking data in handling provision of future directions. 3.The method of claim 1: wherein tracking instances in which directionshave been missed based on the accessed navigation data comprises:accessing direction tracking data; identifying entries in the directiontracking data that have similar attributes; identifying types ofprovided directions that result in frequent misses based on theidentified entries; and storing data describing the identified types ofprovided directions to use in future handling of directions of theidentified types; and wherein accounting for the tracked instances inwhich directions have been missed in handling provision of futuredirections comprises accounting for the stored data describing theidentified types of provided directions that result in frequent missesin future handling of directions of the identified types of provideddirections that result in frequent misses.
 4. The method of claim 1:wherein tracking instances in which directions have been missed based onthe accessed navigation data comprises: accessing direction trackingdata; identifying entries in the direction tracking data that correspondto a particular direction; identifying one or more alternative routesthat are frequently taken when the particular direction is missed basedon the identified entries; and storing data describing the one or morealternative routes for the particular direction to use in futurehandling of the particular direction; and wherein accounting for thetracked instances in which directions have been missed in handlingprovision of future directions comprises accounting for the stored datadescribing the one or more alternative routes for the particulardirection in future handling of the particular direction.
 5. The methodof claim 1: wherein tracking instances in which directions have beenmissed based on the accessed navigation data comprises: accessingdirection tracking data; identifying entries in the direction trackingdata that correspond to a particular user; deriving a driving profilefor the particular user based on the identified entries; and storing thedriving profile for the particular user to use in handling provision offuture directions to the particular user; and wherein accounting for thetracked instances in which directions have been missed in handlingprovision of future directions comprises accounting for the storeddriving profile for the particular user in handling provision of futuredirections to the particular user.
 6. The method of claim 1 whereinaccounting for the tracked instances in which directions have beenmissed in handling provision of future directions comprises: accessingtracked direction data for one or more directions under consideration indetermining a route to a destination; and controlling use of the one ormore directions in determining the route to the destination based on thetracked direction data for the one or more directions.
 7. The method ofclaim 6 wherein controlling use of the one or more directions indetermining the route to the destination based on the tracked directiondata for the one or more directions comprises: identifying one or morefrequently missed directions based on the tracked direction data for theone or more directions under consideration in determining a route to adestination; and avoiding the one or more frequently missed directionsin determining the route to the destination.
 8. The method of claim 6wherein controlling use of the one or more directions in determining theroute to the destination based on the tracked direction data for the oneor more directions comprises: determining a miss probability for the oneor more directions under consideration in determining the route to thedestination based on the tracked direction data for the one or moredirections under consideration in determining the route to thedestination; determining a miss penalty for the one or more directionsunder consideration in determining the route to the destination;computing an estimated time for one or more routes including the one ormore directions based on the determined one or more miss probabilitiesand the one or more miss penalties; and determining a route to thedestination based on the estimated time for the one or more routesincluding the one or more directions.
 9. The method of claim 6 whereincontrolling use of the one or more directions in determining the routeto the destination based on the tracked direction data for the one ormore directions comprises: determining a miss probability for the one ormore directions under consideration in determining the route to thedestination based on the tracked direction data for the one or moredirections under consideration in determining the route to thedestination; determining a miss penalty for the one or more directionsunder consideration in determining the route to the destination;computing an estimated distance for one or more routes including the oneor more directions based on the determined one or more missprobabilities and the one or more miss penalties; and determining aroute to the destination based on the estimated distance for the one ormore routes including the one or more directions.
 10. The method ofclaim 6 wherein controlling use of the one or more directions indetermining the route to the destination based on the tracked directiondata for the one or more directions comprises: determining whether theone or more directions are types of directions that result in frequentmisses based on the tracked direction data for the one or moredirections; and controlling use of the one or more directions indetermining the route to the destination based on the determination ofwhether the one or more directions are types of directions that resultin frequent misses.
 11. The method of claim 1 wherein accounting for thetracked instances in which directions have been missed in handlingprovision of future directions comprises: accessing tracked directiondata for one or more directions included in a route to be presented to auser; and controlling presentation of the one or more directions basedon the tracked direction data for the one or more directions.
 12. Themethod of claim 11 wherein controlling presentation of the one or moredirections based on the tracked direction data for the one or moredirections comprises: identifying one or more frequently misseddirections based on the tracked direction data for the one or moredirections; determining presentation changes that provide additionalassistance in following the one or one or more frequently misseddirections; and adjusting presentation of the one or more frequentlymissed directions based on the presentation changes to provideadditional assistance in following the one or more frequently misseddirections.
 13. The method of claim 11 wherein controlling presentationof the one or more directions based on the tracked direction data forthe one or more directions comprises: determining one or morealternative routes that are frequently taken when the one or moredirections are missed based on the tracked direction data for the one ormore directions; and providing an indication of the one or morealternative routes that are frequently taken when the one or moredirections are missed in presenting the one or more directions.
 14. Themethod of claim 11 wherein controlling presentation of the one or moredirections based on the tracked direction data for the one or moredirections comprises: determining whether the one or more directions aretypes of directions that result in frequent misses based on the trackeddirection data for the one or more directions; and controllingpresentation of the one or more directions based on the determination ofwhether the one or more directions are types of directions that resultin frequent misses.
 15. The method of claim 1 wherein accounting for thetracked instances in which directions have been missed in handlingprovision of future directions comprises: identifying a particular useror device that is requesting directions; accessing a driving profilederived for the particular user or device based on tracked directiondata for the particular user or device; and accounting for the drivingprofile in handling provision of directions to the particular user ordevice.
 16. An electronic device comprising: at least one processor; andat least one non-transitory computer-readable storage medium encodedwith executable instructions that, when executed by the at least oneprocessor, causes the at least one processor to perform operationscomprising: accessing navigation data describing at least one instancein which a direction was missed during provision of electronicnavigation along a route; tracking instances in which directions havebeen missed based on the accessed navigation data; and accounting forthe tracked instances in which directions have been missed in handlingprovision of future directions.
 17. The electronic device of claim 16:wherein tracking instances in which directions have been missed based onthe accessed navigation data comprises: monitoring electronic navigationdata of users following routes guided by electronic navigation;identifying instances in which an electronic navigation system hasprovided a direction to follow; determining whether or not the directionwas followed; identifying one or more attributes associated with thedirection; and storing, in electronic storage, direction tracking datadescribing the direction, the determination of whether or not thedirection was followed, and the identified one or more attributes; andwherein accounting for the tracked instances in which directions havebeen missed in handling provision of future directions comprisesaccounting for the stored direction tracking data in handling provisionof future directions.
 18. The electronic device of claim 16: whereintracking instances in which directions have been missed based on theaccessed navigation data comprises: accessing direction tracking data;identifying entries in the direction tracking data that correspond to aparticular user; deriving a driving profile for the particular userbased on the identified entries; and storing the driving profile for theparticular user to use in handling provision of future directions to theparticular user; and wherein accounting for the tracked instances inwhich directions have been missed in handling provision of futuredirections comprises accounting for the stored driving profile for theparticular user in handling provision of future directions to theparticular user.
 19. The electronic device of claim 16 whereinaccounting for the tracked instances in which directions have beenmissed in handling provision of future directions comprises: accessingtracked direction data for one or more directions under consideration indetermining a route to a destination; and controlling use of the one ormore directions in determining the route to the destination based on thetracked direction data for the one or more directions.
 20. Theelectronic device of claim 16 wherein accounting for the trackedinstances in which directions have been missed in handling provision offuture directions comprises: identifying a particular user or devicethat is requesting directions; accessing a driving profile derived forthe particular user or device based on tracked direction data for theparticular user or device; and accounting for the driving profile inhandling provision of directions to the particular user or device.